• 小程序request请求封装


    以上为本人的项目目录

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

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

    1. const app = getApp();
    2. var baseURL ='http://192.168.110.249:8221';//将url定义在app.js缓存中,直接赋值也是可以的
    3. var cookieToken =wx.getStorageSync('token') || ''; //本地数据从本地缓存中取出
    4. /**
    5. * 统一封装的请求
    6. */
    7. const Request = function request(option) {
    8. return new Promise(function (resolve, reject) {
    9. let header = {
    10. 'content-type': 'application/json',
    11. "Authorization": cookieToken //携带token在请求头中
    12. };
    13. wx.request({
    14. url: baseURL + option.url,
    15. method: option.method,
    16. data: option.data === undefined ? '' : JSON.stringify(option.data), // 如果data没有传入,就给空串,不然就序列化
    17. header: header,//请求头
    18. timeout:10000,//超时时间 5s
    19. success(res) {
    20. //请求成功,此处根据你的业务返回的状态码进行修改
    21. if (res.data.code === 200) {
    22. resolve(res);
    23. } else if (res.data.code === 500) {
    24. //登录状态失效,需要重新刷新数据
    25. reject('登录状态失效,需要重新刷新数据');
    26. } else {
    27. //其他异常
    28. reject('运行时错误,请稍后再试');
    29. }
    30. },
    31. fail(err) {
    32. //请求失败
    33. reject(err)
    34. }
    35. })
    36. })
    37. }
    38. //导出
    39. module.exports = Request

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

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

    1. import CommentApi from "../../api/comment"; //引入
    2. page({
    3. onLoad(){
    4. //调用封装好comment.js里的的firstEchat方法
    5. CommentApi.firstEchat({
    6. //里面是需要传递的参数,对应封装的时候方法里的参数datas
    7. }).then(res=>{
    8. console.log(res)
    9. })
    10. }
    11. })

  • 相关阅读:
    maven update更新后 编码格式变成gbk
    羊了个羊网页版
    Linux下docker安装mysql8.0
    全球与中国无线上网卡和行业市场需求及投资前景分析报告2022-2028年
    chapter1——亚稳态的世界
    Qt5.9.1-下载安装环境搭建——HelloWorld
    c入门第二十四篇: 学生成绩管理系统优化(可执行文件传参)
    〖Python网络爬虫实战㊲〗- JavaScript 逆向实战(一)
    linux错误处理函数
    面试题:MySQL事务的ACID如何实现?
  • 原文地址:https://blog.csdn.net/qq_59599812/article/details/134068782