추천 영상 튜토리얼: node js tutorial
최근 프로젝트에서는 인터페이스 전송이 필요해서 어떤 언어를 선택할지, 노드를 선택할지 고민하다가 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") });
렌더링은 다음과 같습니다
더 많은 프로그래밍 관련 지식을 보려면 프로그래밍 교육을 방문하세요! !
위 내용은 nodejs 인터페이스는 어떻게 데이터를 전송합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!