小程序中封装api请求

小程序中封装api请求,第1张

一、在pages同级创建request文件夹 在此文件夹下创建一个indexjs文件夹 在此文件夹内写入封装的api

const request = (method,url,params) => {               // method (请求方式)     url (请求的路径)   params (请求的参数)

  return new Promise((resolve,reject) => {             // 创建一个promise函数 

    let baseUrl = "公共url"

    unishowLoading({                                               // 添加加载动画

        title: '加载中'

    });

    unirequest({                                                         // 发送请求

        url: baseUrl + url,                                             // url 形参就是传入的地址

        data: params params:'',                               // 传入的请求参数

        method: method,                                            // 传入的请求方式

        success: res => {                                           // 成功的函数

          resolve(resdata);

          unihideLoading();

        },

        fail: err => {                                                 // 失败的函数

          reject(err); 

          unihideLoading();

        }

    });

  })

}

const api = {

  get: (url,params) => request("GET",url,params),

  post: (url,params) => request("POST",url,params)

}

export default api;                                                // 抛出接口

二、在request 文件目录下 创建一个 home文件夹  在home 文件夹内新建indexjs文件

// 所有的首页的请求 ,都放在这里维护

import api from '/indexjs';

export const get = params =>  apiget('路径',params);              // get请求

export const post = params =>  apipost('路径',params);              // post请求

三、在所需要请求数据的页面内

import  请求名  from '文件路径';

1、wxrequest()   发起 >

1、在安全方面

Post请求更安全,get请求的是静态资源,会缓存,如果你是数据的话,就无法缓存下来。

2、在数据类型方面

post请求发送的数据更大且能发送数据类型比较多,,get请求有url长度限制,只能发送ASCII字符。

3、在传输方面

get请求参数通过url传递,,post请求放在request body中传递。

4、在TCP数据包方面

ost请求产生两个TCP数据包,get请求,浏览器会把>

>

4xx:客户端错误

400 Bad Request:客户端请求有语法错误,服务器无法理解。

一般来说,原因都是提交的字段类型、数据格式的问题

1)前端提交数据的字段名称或者是字段类型和后台的实体类不一致,导致无法封装;

2)前端提交的到后台的数据应该是json字符串类型,而前端没有将对象转化为字符串类型;

这两种的解决方案:

1)对照字段名称,类型保证一致性

2)使用stringify将前端传递的对象转化为字符串 data: JSONstringify(param) ;

因为在postman上可以调通,所以不是上述原因,而且因为后台要求,这次的参数全部拼接在url上。然后就发现原因了,这次的请求拼接为 >

以上就是关于小程序中封装api请求全部的内容,包括:小程序中封装api请求、wx.request()方法、get请求和post请求区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10118963.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存