小程序模板网

微信小程序如何实现与后台通信(PHP)

发布时间:2018-04-18 09:33 所属栏目:小程序开发教程
作者:木子林,来自公众号:快乐的小码农

最近一段时间微信小程序向个人开发者开放了申请,于是自己开始学习如何开发小程序,由于对后台开发不熟悉,所以自己碰到了许多坑。

自己碰到的第一个坑就是如何实现与小程序的后台通信,根据微信小程序官方文档的说法,网络通信需要通过wx.request发起网络请求,官方文档的写法是:

 

					
  1. wx.request({
  2. url: 'test.php', //仅为示例,并非真实的接口地址
  3. data: {
  4. x: '' ,
  5. y: ''
  6. },
  7. header: {
  8. 'content-type': 'application/json'
  9. },
  10. success: function(res) {
  11. console.log(res.data)
  12. }
  13. })

但是在实际的操作中是url微信要求必须是https协议的。

下面我以一个例子来完成微信小程序从后台请求数据:

  1. 打开微信官方小程序开发IDE,在app.json文件中新建一个页面
 

					
  1. {
  2. "pages":[
  3. "pages/index/index",
  4. "pages/todos/todos"//在这里新建一个页面
  5.  
  6. ],
  7. "window":{
  8. "backgroundTextStyle":"light",
  9. "navigationBarBackgroundColor": "#fff",
  10. "navigationBarTitleText": "WeChat",
  11. "navigationBarTextStyle":"black"
  12. }
  13. }

2.加上上面的一段代码保存后我们就可以看到在pages文件夹下多了一个页面

然后在todos.js中进行数据请求,请求代码如下:

 

					
  1. Page({
  2. onLoad: function () {
  3. var that = this;
  4. wx.request({
  5. url: 'https://www.***.***/index.php',//此处填写你后台请求地址
  6. method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
  7. // header: {}, // 设置请求的 header
  8. success: function (res) {
  9. // success
  10. console.log(res.data);//在控制台输出在远程后台请求到的数据
  11. },
  12. fail: function (res) {
  13. // fail
  14. },
  15. complete: function (res) {
  16. // complete
  17. }
  18. })
  19. }
  20. })

3.第三步就是编写后台响应程序来响应微信小程序的前台请求,我的后台使用php写的,后台响应的文件index.php如下:

 

					
  1. <?php
  2. $data = array(
  3. 'tid' => 100,
  4. 'name' => 'IT学习笔记',
  5. 'site' => 'www.icvo.net');
  6.  
  7. $response = array(
  8. 'code' => 200,
  9. 'message' => 'success for request',
  10. 'data' => $data,
  11. );
  12.  
  13. echo json_encode($response);//生成json文件
  14. ?>

4.这时候,我们就可以在控制台看到我们请求的json数据了

这样,一次成功的微信小程序从后台请求数据就成功了。



易优小程序(企业版)+灵活api+前后代码开源 码云仓库:starfork
本文地址:https://www.eyoucms.com/wxmini/doc/course/23602.html 复制链接 如需定制请联系易优客服咨询:800182392 点击咨询
QQ在线咨询