100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 使用nginx反向代理在微信小程序中使用http请求

使用nginx反向代理在微信小程序中使用http请求

时间:2018-08-03 15:55:01

相关推荐

使用nginx反向代理在微信小程序中使用http请求

使用nginx反向代理在微信小程序中使用http请求

由于微信小程序对第三API的请求做了限制官方说明文档,导致我们无法访问非https的请求,然而我们在开发小程序过程中所请求的第三方接口不一定都是https的请求,那我们要怎么做才能在微信小程序开发中使用http形式的接口呢。废话不多说,直接看效果。

使用代理之前

使用代理之后

完成上面的操作我们需要做的准备工作

首先我们需要拥有一个自己的域名(如果没有直接在阿里云,腾讯云,百度云等直接注冊一个)然后我们需要进行域名解析,这里我选的是阿里云解析 ,其他解析网站操作也类似 。

如下图所示则解析成功!然后我们需要去阿里云申请一个免费的SSL安全证书,证书申请地址要注意:证书的签发需要实名认证,下图表示证书签发成功

然后我们选择证书的下载,点击后会弹出如下页面我们选择Nginx下载,下载后我们会得到两个文件.pem和.key的文件。

我们可以在宝塔给域名绑定证书,以便测试我们的证书是否有效(如确认证书有效则可以跳过该步骤),我们直接进入宝塔,然后选择网页版进入后我们来到控制面板,点击网址再点击设置然后我们再点击SSL,依次填入相应的内容

配置成功后的页面为(如下图显示部署成功则表示你的证书可以用)

在确认证书有效后接下来我们就可以开始配置Nginx进行反向代理了!

i. 首先我们打开Nginx安装目录然后找到conf文件夹,然后我们在里面新建一个名为cert(当然名字你可 以自己取,但必须是英文)文件夹,然后我们将下载的.key和.pem文件放入其中

ii. 然后我们打开改目录下的nginx.conf文件在里面加入如下代码

nginx.conf中加入的配置为server {listen 443 ssl; #SSL协议访问端口号为443。此处如未添加ssl,可能会造成Nginx无法启动。server_name localhost; #将localhost修改为您证书绑定的域名,例如:。root html;index index.html index.htm#以下属性中以ssl开头的属性代表与证书配置有关,其他属性请根据自己的需要进行配置。ssl_certificate cert/name.pem; #name.pem替换成您证书的文件名。ssl_certificate_key cert/name.key; #name.key替换成您证书的密钥文件名。ssl_session_timeout 5m;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加密套件。ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用该协议进行配置。ssl_prefer_server_ciphers on; location / {proxy_store off;proxy_redirect off;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Referer 'no-referrer-when-downgrade';proxy_set_header User-Agent 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36';proxy_connect_timeout 600;proxy_read_timeout 600;proxy_send_timeout 600;proxy_pass 你想代理的接口地址(例如::8000/api/); }}

完成以上流程后再以管理员身份运行cmd控制台,然后再开启Nginx服务,最后我们再打开我们的微信开发者工具,我们会惊奇的发现我们原先无法使用的http形式的API在代理后有了数据!(注:代理后我们在微信小程序中求情的API地址应该为我们自己的证书绑定的后的域名地址)

总结

这只是一直曲线救国的方式,只适合与个人的开发。如果需要长期使用则还是需要搭载自己的服务器,以上皆为个人开发中的一些经验总结,希望对你有帮助。另外如果有什么错误欢迎各位斧正。最后蟹蟹大家的支持,冲冲冲~

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。