首页 存档 技术 查看内容

微信小程序请求server时遇到的2个问题

2018-3-30 13:00 |来自: 互联网 486 0

摘要: 简介 微信小程序与服务器的沟通逻辑并不复杂,流程: 前3步做好以后,我在最后一步遇到了2个问题,花费了很多时间,总结出来供大家在开发小程序时参考 问题1: invalid url 在小程序中调用网络请求接口从服务器获取数 ...

简介

微信小程序与服务器的沟通逻辑并不复杂,流程:


前3步做好以后,我在最后一步遇到了2个问题,花费了很多时间,总结出来供大家在开发小程序时参考

问题1: invalid url

在小程序中调用网络请求接口从服务器获取数据:

wx.request({
 url: 'https://www.**.com/test.php',
 ...
})

这段代码非常简单,小程序API中也给出了示例代码,但执行后报错:

request:fail invalid url 

文档没有此类错误的说明,网上也没有资料,试了很多方法都不行

很费解,找不到原因,后来在一次无意的尝试中解决了

方法:把 url 的单引号改为`(与 ~ 同键)

...

url: `https://www.**.com/test.php`,

...

我这个 url 字符串中并没有引用变量,不明白为什么单引号不行,而需要使用`,如果你知道原因,拜托发个消息指点我一下

问题2: TLS 1.2

上个问题解决后,又出现新的问题:

TLS版本必须大于等于1.2

这个问题是小程序文档中明确指出的,这说明自己服务器的TLS版本过低,需要升级

先查看一下自己的 TLS 版本是多少:

浏览器中访问自己的 https URL,浏览器地址栏前面有个绿色小锁的图标,点击后可以查看安全信息,其中就有 TLS 的版本,我的为 TLS 1.0

升级过程

1)升级 OpenSSL

查看服务器 OpenSSL版本

openssl version -a 

0.0.98,这个版本还不支持 TLS 1.2,要升级到 1.0.2

2)重新编译 Nginx

之前安装 Nginx 时 OpenSSL 是旧版,OpenSSL 升级后需要重新编译 Nginx

这两步做完后,浏览器中再次访问,点击绿色锁查看信息,TLS 版本变为了 1.2,在小程序客户端中也可以正常得到请求结果

小结

这里介绍的是大体思路,具体操作步骤之后再整理出来发布,例如:

  • 免费SSL证书的申请方式

  • Nginx https 的配置方式

  • OpenSSL升级步骤


点击 “阅读原文” 查看 文章列表

本文转载于微信公众号: 性能与架构(yogoup),更多微信文章请扫描关注公众号:

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部