用户
 找回密码
 立即注册

QQ登录

只需一步,快速开始

微客吧 首页 教程 微信小程序 新手教程 查看内容

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

纸飞机 2018-3-6 16:10

作者:木子林,来自公众号:快乐的小码农最近一段时间微信向个人开发者开放了申请,于是自己开始学习如何开发小程序,由于对后台开发不熟悉,所以自己碰到了许多坑。自己碰到的第一个坑就是如何实现与小程序的后台通 ...

作者:木子林,来自公众号:快乐的小码农

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

自己碰到的第一个坑就是如何实现与小程序的后台通信,根据微信小程序官方文档的说法,网络通信需要通过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. "window":{
  7. "backgroundTextStyle":"light",
  8. "navigationBarBackgroundColor": "#fff",
  9. "navigationBarTitleText": "WeChat",
  10. "navigationBarTextStyle":"black"
  11. }
  12. }

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. $response = array(
  7. 'code' => 200,
  8. 'message' => 'success for request',
  9. 'data' => $data,
  10. );
  11. echo json_encode($response);//生成json文件
  12. ?>

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

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

鲜花
鲜花
握手
握手
雷人
雷人
路过
路过
鸡蛋
鸡蛋
分享至 : QQ空间
收藏