send _passtoken in post body instead of in header, because cloudflare doesn't pass header to my server

This commit is contained in:
陆柯 2023-03-12 16:54:15 +08:00
parent 81e7e50b65
commit da8bb9a4a5

View File

@ -195,8 +195,7 @@ export default {
let [error, { statusCode, header, errMsg, data: resultServer = {} } = {}] = await uni.request({
method: httpMethod,
url: url,
header: { _passtoken: uni.getStorageSync('_passtoken') },
data: apiWhat,
data: { ...apiWhat, _passtoken: uni.getStorageSync('_passtoken') },
})
if (error) {
if (error.errMsg === 'request:fail') {
@ -249,11 +248,6 @@ export default {
name = 'file',
} = {}) {
// 有的管理后台不需要登录就允许上传,例如 cmctoy。因此不要在这里依赖登录状态。
// if (uni.getStorageSync('_passtoken')) {
// header._passtoken = uni.getStorageSync('_passtoken')
// } else {
// return [{ _ERROR: 'USER_OFFLINE', errMsg: 'offline user cannot upload files' }, null]
// }
let filePath
if (mediaType === 'image') {
@ -271,7 +265,7 @@ export default {
// multer 不会自动处理 JSON 数据,必须前后端配合处理
formData[key] = JSON.stringify(formData[key])
}
header._passtoken = uni.getStorageSync('_passtoken')
// 在 Fileloader/fileloader.js 里,已经不再依赖 _passtoken而且 header 在 cloudflare 代理之后也被过滤掉了,因此不再使用这一句: header._passtoken = uni.getStorageSync('_passtoken')
uni.showLoading()
let [errorUpload, { data, statusCode } = {}] = await uni.uploadFile({ url: this.makeServerUrl(url), filePath, name, header, formData })