我在Uniapp中封装了Uni-request,但是接口并没有收到我传的值,请帮我分析问题function request(params) { let headerData = { 'content-type': 'application/json' } let method = params.method.toUpperCase(); //小写改为大写 let dataObj = null; let requestParam = null; if (method == "GET" ) { headerData = { 'content-type': 'application/json', } requestParam = params.param } else { headerData = { 'content-type': 'application/json', } requestParam = params.data } return new Promise((res,rej) =>{ uni.request({ url:baseURL + params.url, data: requestParam, method: method, header: headerData, success(data) { res(data) }, fail: (err) => { reject(err); console.log(err) }, }) }) } export default request;
时间: 2024-01-23 09:04:02 浏览: 64
根据你提供的代码,可以看出你的封装函数中,GET 请求的参数应该是 params.params 而不是 params.param。另外,你的代码中 dataObj 变量没有被使用到,建议将其去掉。修改后的代码如下:
```
function request(params) {
let headerData = {
'content-type': 'application/json'
}
let method = params.method.toUpperCase(); //小写改为大写
let requestParam = null;
if (method == "GET" ) {
headerData = {
'content-type': 'application/json',
}
requestParam = params.params
} else {
headerData = {
'content-type': 'application/json',
}
requestParam = params.data
}
return new Promise((res,rej) =>{
uni.request({
url:baseURL + params.url,
data: requestParam,
method: method,
header: headerData,
success(data) {
res(data)
},
fail: (err) => {
reject(err);
console.log(err)
},
})
})
}
export default request;
```
另外,你在使用 request 函数时,需要将请求参数包装成一个对象,然后将其作为 request 的参数进行调用,如下所示:
```
const param = { deptId: 1 };
request({
method:'get',
url:'/***',
params: param
}).then(res =>{
console.log(res)
})
```
希望这些修改能够帮助你解决问题。
阅读全文