本地配置HTTPS的代理时一般都需要把本地项目启动成HTTPS
vue-cli2框架可以参考文章:
https://blog.csdn.net/qq_34707038/article/details/83374209
vue-cli 3就更简单了直接在vue.config.js直接添加 https:true 就可以。
但是kylin-H5这个和他们都不一样,他们的转发用的是var proxy = require('http-proxy-middleware');
这个是可以http->https的,所以解决方法如下:
一,其中需要生成一个p12文件
在cmd中执行如下命令:
1,openssl genrsa -out privatekey.pem 1024
2,openssl req -new -key privatekey.pem -out certrequest.csr
直接回车就可以
3,openssl x509 -req -in certrequest.csr -signkey privatekey.pem -out certificate.pem
4,openssl pkcs12 -export -inkey privatekey.pem -in certificate.pem -out certificate.p12
需要输入一下密码,我用的是abc123
二、在plugin.js中添加
var fs = require('fs');
本地代理如下:
// 接入 express 插件, 依赖 build@ 0.1.49+ 及以上版本
express: function modifyExpress(expressInstance) {
// 如果要使用 http-proxy-middleware, cnpm i --save-dev http-proxy-middleware 安装该模块并取消下面的注释
expressInstance.use(
proxy('/imp', {
target:{
protocol: 'https:',
host: 'IP地址',
port: 8443,
pfx: fs.readFileSync('cert/certificate1.p12'),
passphrase: 'abc123',
},
secure: false,
changeOrigin: true
})
);
}
};