请问大家帮我看看 这个封装的请求如何携带一个共用的参数?
export const request = (options = {}) => {
//异步封装接口,使用Promise处理异步请求return new Promise((resolve, reject) => {
console.log(options.data);
let rd3_key = uni.getStorageSync('rd3_key') ? uni.getStorageSync('rd3_key') : ''
// 发送请求
uni.request({
url: baseUrl + options.url || '', //接收请求的API
method: options.method || 'GET', //接收请求的方式,如果不传默认为GET
data: options.data || {}, //接收请求的data,不传默认为空
header: {
'content-type': 'application/x-www-form-urlencoded', //修改此处即可
}
}).then(data => {
let [err, res] = data;
resolve(res);
}).catch(error => {
reject(error);
})
})
}
我想在data 参数里 携带一个rd3_key:rd3_key 所有接口都需要这个,请问如何去写
回答:
//异步封装接口,使用Promise处理异步请求return new Promise((resolve, reject) => {
console.log(options.data);
let rd3_key = uni.getStorageSync('rd3_key') ? uni.getStorageSync('rd3_key') : ''
let params = {
...options.data,
rd3_key
}
// 发送请求
uni.request({
url: baseUrl + options.url || '', //接收请求的API
method: options.method || 'GET', //接收请求的方式,如果不传默认为GET
data: options.data ? params: {}, //接收请求的data,不传默认为空
header: {
'content-type': 'application/x-www-form-urlencoded', //修改此处即可
}
}).then(data => {
let [err, res] = data;
resolve(res);
}).catch(error => {
reject(error);
})
})
}
回答:
Object.assign({}, options.data, { rd3_key })
回答:
不需要额外包一层Promise
export const request = (options = {}) => { let rd3_key = uni.getStorageSync('rd3_key') ? uni.getStorageSync('rd3_key') : ''
// 发送请求
return uni.request({
url: baseUrl + options.url || '', //接收请求的API
method: options.method || 'GET', //接收请求的方式,如果不传默认为GET
data: {
...options.data,
rd3_key
}, //接收请求的data,不传默认为空
header: {
'content-type': 'application/x-www-form-urlencoded', //修改此处即可
}
}).then(data => {
return data.res
})
}
以上是 请问大家帮我看看 这个封装的请求如何携带一个共用的参数? 的全部内容, 来源链接: utcz.com/p/932917.html