最近由于自己要做一个微信小程序,接口地址只能是https的,这就很难受了
于是乎,我租了个服务器,搞了个免费的ssl认证
可是呢,我不会搞https接口怎样实现
今天特意花了一天时间来学,来学习
"use strict"; var app = require('express')(); const mysql = require('mysql');//引入mysql var fs = require('fs');//引入文件模块 var http = require('http');//引入http var https = require('https');//引入https const cors = require('cors')// 跨域 var bodyParser = require('body-parser');//解析参数 var privateKey = fs.readFileSync('./********.key', 'utf8');//密钥 var certificate = fs.readFileSync('./********.crt', 'utf8');//公钥 var caKey = fs.readFileSync('./**********.crt', 'utf8');//私钥 var credentials = {key: privateKey, ca:[caKey], cert: certificate}; const option = { host:'localhost',//数据库地址 user:'root',//账户名 password:'root',//密码 port:'3306',//端口 database:'******',//数据库名 connectTimeout:5000, // 连接超时 multipleStatements:false // 是否允许一个query中包含多条sql语句 } const conn = mysql.createConnection(option) var httpServer = http.createServer(app);//创建http服务 var httpsServer = https.createServer(credentials, app);//创建https服务 var PORT = 8001; //http监听的端口 var SSLPORT = 8002;//https监听的端口 app.use(cors()) //解决跨域 app.use(bodyParser.json()); app.use(bodyParser.urlencoded({extended: true}));//允许表单请求 httpServer.listen(PORT);//http服务绑定端口 httpsServer.listen(SSLPORT);//https服务绑定端口 //以下是你的接口文件 //例如: app.get('/user',(req,res)=>{ conn.query("select * from `表名`",(e,r)=>res.json(new Result({data:r}))) }) function Result({code=0,msg='',data={}}){ this.code = code; this.msg = msg; this.data = data }
现在才发现原来http请求和https请求端口是不一样的