微信小程序wx.request请求封装,和跨域的解决。

建议把所有请求抽离到不同页面对应的js文件中,可以方便后期的修改和排查问题,小程序请求是通过微信后台来请求我们的后台地址来进行后端映射、你请求的接口实际到微信的后端做了一道映射,微信后端拿到你的 wx.request 调用的 url、用后端请求后端,所以不会出现跨域问题

一、新建network文件夹并建立netwrok.js文件

import baseURL from "./config.js";
// 引入baseURL 后面会讲到
export default function request(options){
  // options为调用时传入的参数对象
  return new Promise((resolve,reject)=>{
    wx.request({
      header:{
        'pc-token':'4a82b23dbbf3b23fd8aa291076e660ec'
         //定义公共头部信息
      },
      url:baseURL+options.url, 
      // 拼接请求地址
      data:options.data||{},
      // 传入data参数
      method:options.method||'get',
      // 传入请求类型默认为get
      success:function(res){
        resolve(res)
        // 成功回调
      },
      fail:function(res){
        reject(res)
        // 失败回调
      }
    })
  })
}

二、在network中建立config.js文件配置公共信息

const baseURL='http://xxxxxxxxxxx'
// 配置公共地址并暴露
export default baseURL

三、建立对应的js文件,配置单个请求文件

import requset from "./network";
// 引入requset请求
export  function getList(page){
  // 配置当前请求的地址和传入的参数
  return requset({
    url:"/getCarList",
    data:{
      page
    },
    method:'post'
  })
}

四、使用

import {getList} from "../../network/req.js";
// 引入封装好的单个请求

// 调用请求获取数据
getList(1).then((res)=>{
      this.setData({
        list:res.data
      })
  })

 

五、跨域的配置,打上对勾即可!

  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值