突破小程序网络请求限制黑科技 让你更自由地请求任意网站数据
项目地址:https://github.com/guren-cloud/v-request
大家都知道,小程序的http网络请求是非常严格的:
- 域名需要备案
- 域名需要上https
- 需要开发者在后台设置request白名单
所以,这个项目出现了。
得益于小程序的云开发功能,让我们可以突破这个限制,来达到请求任何可访问的http数据!
(如:ip访问、http 80端口访问、自定义端口访问、未备案域名等场景)
项目分为两部分,一个是我们的小程序云函数代码,在cloud目录中。
我们首先在开发者工具开通小程序云开发平台,然后初始化好环境之后,创建一个云函数,命名为:v-request:
然后把index.js和package.json文件的内容替换为项目cloud目录中对应的文件内容,再右键进行上传部署(云端安装依赖)操作:
另一个文件,就是主目录下的v-request.js文件,这个是运行在我们小程序里的SDK客户端文件。
我们把它放入小程序的目录,如utils/目录中,然后在app.js文件中进行require加载即可:
通过上边的部署,我们已经可以在小程序的任意位置进行使用我们的v-request黑科技了!
使用方法很简单,和wx.request官方API的用法基本保持一致
我们只需要把原来的wx.request改成wx.vrequest即可。
wx.vrequest({ url: 'https://mssnn.cn', success: ret => { console.log(ret.data); } })
wx.login({ success: ret => { wx.vrequest({ url: 'https://wx5bbe79dd056cb238.mssnn.cn/v2/client/init', data: 'code=' + ret.code, dataType: 'json', method: 'POST', header: { 'Content-Type': 'application/x-www-form-urlencoded' }, success: res => { console.log('[post.res]', res); } }) } })
代码仅供学习,请勿滥用或用于非法用途。
本方法由古人云小程序原创研发
欢迎你关注我们学习更多小程序开发技巧!