• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

小程序封装wx.request,以及调用

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1、新建一个api目录,与pages同级

2、在api目录下新建一个api.js文件

3、编写代码

const host = 'http://test.test.cn'
const wxRequest = function (params, url) {
  wx.showToast({
    title: '加载中...',
    icon: 'loading'
  })
  wx.request({
    url: url,
    method: params.method || 'GET',
    data: params.data || {},
    header: {
      'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'
    },
    success: function (res) {
      params.success && params.success(res)
      wx.hideToast()
    },
    fail: function (res) {
      params.fail && params.fail(res)
    },
    complete: function (res) {
      params.complete && params.complete(res)
    }
  })
}

const bindCode = function (params) { wxRequest(params, host + '/AppPhone/Api') }
const startScan = function (params) { wxRequest(params, host + '/AppPhone/Api') }
const imgToservers =  function (params) { wxRequest(params, host + '/AppPhone/Api/upload_files') }

module.exports = {
  bindCode,
  startScan,
  imgToservers
}

4、在js中调用

import api from '../../api/api.js'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    shopCode: '',
    deviceId: '',
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var getShopInfo = wx.getStorageSync('shopInfo');
    if (getShopInfo) {
      this.setData({
        shopCode: getShopInfo.shop_code,
        deviceId: getShopInfo.device_id
      })
    }else{
      wx.redirectTo({
        url: '../bindnum/bindnum?type=1'
      })
    }
  },
  beginScan: function(){
    var _that = this;
    api.startScan({
      method: 'POST',
      data: {
        shop_code: this.data.shopCode,
        device_id: this.data.deviceId,
        method: 'get_phone_scanner_id'
      },
      success: function(res){
        console.log(res.data);
      }
    });
  },
})

5、问题

一开始wx.request中header设置为

header: {
    'content-type': 'application/json' // 默认值
},
导致接口调用时,报500

后面查找发现,终于找到了解决方案,将header设置为:
  header: {
      'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'
  },

就可以成功调用了

 

参考文章: wx.request发送与服务端接受

 

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
一个用来测试Webservice里面方法的桌面小程序(用java写的)发布时间:2022-07-18
下一篇:
工具类小程序分享发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap