网站推广.NET

网站推广.NET

无法接受:微信小程序如何与后台

来源:互联网

最近,微信小程序向各个开发人员打开了应用程序,因此我开始学习如何开发小程序。因为我不熟悉背景开发,所以遇到了很多陷阱。

我遇到的第一个陷阱是如何与小程序进行后台通信。根据微信小程序官方文档,网络通信需要通过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协议。

让我用一个示例从后台完成微信小程序个请求数据:

打开微信官方小程序开发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.添加上面的代码并保存后,我们可以看到页面文件夹中还有一个页面

然后在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. $data = array(
  2. 'tid' => 100,
  3. 'name' => 'IT学习笔记',
  4. 'site' => 'www.icvo.net');
  5. $response = array(
  6. 'code' => 200,
  7. 'message' => 'success for request',
  8. 'data' => $data,
  9. );
  10. echo json_encode($response);//生成json文件
  11. ?>

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

通过这种方式,成功微信小程序从后台成功请求数据。