新网Logo
首页>域名资讯>

微信小程序搭配小白接口,自己没有服务器也能开发哦

登录 注册

微信小程序搭配小白接口,自己没有服务器也能开发哦

  • 来源:新网
  • 更新日期:2018-03-26

摘要:这里将重点介绍,在自己没有服务器的情况下,如何在微信小程序里直接调用小白接口。   前提 假设你已经开通微信小程序,如果还没有,可前往微信公众平台开通:https://mp.weixin.qq.com 假设你已经开通小白接口,如果还没有,可到https://www.okayapi.com/?f=mwx 免费注册开通   源代码 本示例源代码可到码云上下载,点击下载:https:/

这里将重点介绍,在自己没有服务器的情况下,如何在微信小程序里直接调用小白接口。

12C58PICdME_1024.jpg

 

前提

假设你已经开通微信小程序,如果还没有,可前往微信公众平台开通:https://mp.weixin.qq.com

假设你已经开通小白接口,如果还没有,可到https://www.okayapi.com/?f=mwx 免费注册开通

 

源代码

本示例源代码可到码云上下载,点击下载:https://gitee.com/dogstar/okayapi-demo。

最终运行效果:

关键配置 修改request合法域名

首先,登录微信公众号平台,进入:设置 - 开发设置 - 服务器域名,修改request合法域名,修改为你当前所在的小白接口域名。小白接口已支持HTTPS访问。如下:

如果不清楚自己所在的域名,可登录小白后台,进入:系统设置 - 我的套餐,查看接口域名。如:

注意!并不是全部的所在域名都是https://api.okayapi.com,只有在这设置后,才能允许在小程序中请求接口。

修改app.js里的globalData

然后,下载本接入示例的代码,使用微信开发者工具(点击下载)打开,并修改app.js里的globalData配置。如下:

关于APP_KEY和APP_SECRECT,可以在前面我的套餐里找到。

配置完成后,我们就可以开始在小程序里进行功能开发啦。下面来看,如何编写代码请求小白接口。

先在你的utils目录内文件里添加okayapi.js和md5.js这两个文件。然后在你的index.js文件内,先引入okayapi.js,即:

//index.js let okayapi = require(\'../../utils/okayapi.js\') 通过wx.request请求小白接口

然后,使用微信提供的wx.request对小白接口发起请求。需要注意的是,传递的参数须经过okayapi.enryptData()进行加密,在返回的结果中的wxRes.data才是小白接口的返回结果。

/** * 小白接口请求示例 */ okayApiHelloWorld: function(e) { /** * 准备接口参数 */ let params = { s: "Hello.World", // 必须,待请求的接口服务名称 name: "dogstar" // 可选,根据接口文档,补充更多接口参数 }; let _self = this /** * 对小白接口发起请求 */ wx.request({ url: app.globalData.okayapiHost, data: okayapi.enryptData(params), success: function (wxRes) { // TODO:实现你的梦想…… let res = wxRes.data if (res.data && res.data.err_code == 0) { // TODO:请求成功 console.log(\'ok: \', res.data) _self.setData({ motto: res.data.title }) } else { // TODO:当前操作失败 console.log(\'fail: \', res) _self.setData({ motto: res.data.err_msg }) } } }) }

调用成功的情况下,会看到类似这样的调试信息:

使用PHP代理请求小白接口

以上是针对自己没有服务器下,微信小程序直连小白接口的接入指南。如果自己有服务器,并且不能修改现在微信小程序上的request合法域名时,则可以使用上面介绍的PHP代理。PHP代理的使用更简单,只需要将PHP代理文件上传到你的服务器上,然后在微信小程序请求接口时,链接改为刚才PHP代理的链接即可。这种使用场景,更为简便,不需要修改request合法域名,也不需要修改app.js里的globalData配置,也不需要在wx.request进行okayapi.enryptData()加密。因为这些都全部移到了PHP代理内实现,因此也更为安全。

即调用链如下:

// 自己没有服务器(通过wx.request直接请求小白接口) 微信小程序 -> 小白接口 // 自已有服务器(通过PHP代理中转请求小白接口) 微信小程序 -> 自己服务器的PHP代理 -> 小白接口

对于自己有服务器的情况,推荐使用PHP代理;如果没有自己的服务器也不要紧,可参考上面的接入指南。

 

在小白接口上,你可以存放很多自己的数据,与微信小程序搭配起来开发,你就能开发任何应用啦~~