最近專案需要介面傳輸,於是乎找了那個選擇哪個語言,選擇node,而且是https模式!
找了好久才解決跨域問題!廢話不多說,直接上程式碼
let mysql = require('mysql');
let express = require('express');
let app = express();
let https = require("https");
let fs = require("fs");
// Configuare https
const httpsOption = {
key : fs.readFileSync("./https/3_jdong.xuexuebang.cn.key"),//https證照key
cert: fs.readFileSync("./https/2_jdong.xuexuebang.cn.crt")//https證照crt
}
//連結資料庫
let connection = mysql.createConnection({
host : '127.0.0.1',
port : '3306',
database : 'sz',
user : 'soubei',
password : 'soubei',
})
connection.connect();
//解決跨域問題
app.all("*",function (req, res, next) { //允許所有請求方式
res.header("Access-Control-Allow-Origin","*");//所有
res.header("Access-Control-Allow-Headers","content-type")//post
next()
})
app.get('/userlist',function(req,res){
shop_name = req.query.shop_name;
connection.query('SELECT * from `order` where orderStatus="暫停" ',function(error,results,fileds){
if(error) throw error;
res.header("Access-Control-Allow-Origin", "*");
res.header('Access-Control-Allow-Headers', 'Content-type');
res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS,PATCH");
res.header('Access-Control-Max-Age',1728000);//預請求快取20天
res.writeHead(200,{"Content-Type":"text/json;chartset=utf-8"})
data = []
// console.log('SELECT skuId from `cmf_order_sku` where shop_name="'+shop_name+'" group by skuId')
connection.query('SELECT skuId from `cmf_order_sku` where shop_name="'+shop_name+'" group by skuId',function(error,result,fileds){
if (result !=''){
res.end(JSON.stringify(result))
}
if (error == null){
res.end(JSON.stringify('請求失敗'))
}
})
})
})
https.createServer(httpsOption, app).listen(8080,function(){
// let host = server.address().address;
// let port = server.address().port;
console.log("應用例項,執行在http://%s:%s")
});
效果圖如下
本作品採用《CC 協議》,轉載必須註明作者和本文連結