小程序request请求封装

以上为本人的项目目录

1.首先在utils中创建request.js文件封装request请求,此封装带上了token,每次请求都会自带token,需要你从后端获取后利用wx.setStorageSync('token',返回的token),不使用的话就是空

直接复制即可,需要改一下请求地址,有些配置自己可根据实际情况修改,比如以下状态码的判断,根据你的具体返回。

javascript 复制代码
const app = getApp();
var baseURL ='http://192.168.110.249:8221';//将url定义在app.js缓存中,直接赋值也是可以的
var cookieToken =wx.getStorageSync('token') || ''; //本地数据从本地缓存中取出
/**
 * 统一封装的请求
 */
const Request = function request(option) {
  return new Promise(function (resolve, reject) {
    let header = {
      'content-type': 'application/json',
      "Authorization":  cookieToken //携带token在请求头中
    };
    wx.request({
      url: baseURL + option.url,
      method: option.method,
      data: option.data === undefined ? '' : JSON.stringify(option.data), // 如果data没有传入,就给空串,不然就序列化
      header: header,//请求头
 	    timeout:10000,//超时时间 5s
      success(res) {
        //请求成功,此处根据你的业务返回的状态码进行修改
        if (res.data.code === 200) {
          resolve(res);
        } else if (res.data.code === 500) {
          //登录状态失效,需要重新刷新数据
           reject('登录状态失效,需要重新刷新数据');
        } else {
          //其他异常
          reject('运行时错误,请稍后再试');
        }
      },
      fail(err) {
        //请求失败
        reject(err)
      }
    })
  })
}


//导出
module.exports = Request

2.创建api文件夹,在里面创建comment.js进行二次封装请求,引入刚刚创建的request.js文件,下图每个方法都是一个接口请求。

3.使用封装的接口。引入刚刚创建的comment.js,里面已经封装好了接口请求。

javascript 复制代码
import CommentApi from "../../api/comment"; //引入

page({
onLoad(){

   //调用封装好comment.js里的的firstEchat方法
   CommentApi.firstEchat({
           //里面是需要传递的参数,对应封装的时候方法里的参数datas
     }).then(res=>{

           console.log(res)

       })

   }





})
相关推荐
2501_915106321 天前
iPhone 文件管理,如何进行应用沙盒文件查看
android·ios·小程序·https·uni-app·iphone·webview
说私域1 天前
以非常6+1体系为支撑 融入AI智能名片商城小程序 提升组织建设效能
大数据·人工智能·小程序·流量运营·私域运营
是梦终空1 天前
计算机毕业设计267—基于Springboot+vue3+小程序的医院挂号系统(源代码+数据库)
spring boot·小程序·vue·毕业设计·课程设计·医院挂号系统·源代码
低代码布道师1 天前
【教培管家】小程序实战(八)——我的课表
低代码·小程序·云开发
一匹电信狗1 天前
【Linux我做主】从 fopen 到 open:Linux 文件 I/O 的本质与内核视角
linux·运维·服务器·c++·ubuntu·小程序·开源
2501_915921431 天前
Fastlane 结合 AppUploader 来实现 CI 集成自动化上架
android·运维·ci/cd·小程序·uni-app·自动化·iphone
2501_915921431 天前
iOS 抓包怎么绕过 SSL Pinning 证书限制,抓取app上的包
android·网络协议·ios·小程序·uni-app·iphone·ssl
黑睿1 天前
微信小程序,skyline引擎,display: grid失效问题解决
microsoft·微信小程序·小程序
毕设源码-朱学姐2 天前
【开题答辩全过程】以 基于微信小程序的大学生安全素质综合培养平台设计与实现为例,包含答辩的问题和答案
微信小程序·小程序
潆润千川科技2 天前
中老年垂直社交小程序产品功能对比与设计思路分析
小程序