1 回答
TA贡献1784条经验 获得超8个赞
解决了!
我不得不使用 Axios 的“裸”版本向 S3 发出 put 请求。
我之前使用的是在我的 API 文件中声明的 Axios 实例......
import axios from 'axios'
import store from '../redux/store'
const instance = axios.create({
baseURL: process.env.REACT_APP_API_URL
})
instance.interceptors.request.use(
async (config) => {
const token = store.getState().auth.token
if (token) {
config.headers.Authorization = `Bearer ${token}`
}
return config
},
(e) => {
return Promise.reject(e)
}
)
export default instance
当我通过身份验证时,这弄乱了我的标题。AWS 不喜欢这样。
解决方案是将 Redux 操作从
import api from '../api'
...
api.put(signedRequest, file, options)
...
至
import axios from 'axios'
...
axios.put(signedRequest, file, options)
...
同时将其余 API 调用留在默认 API Axios 实例上。
添加回答
举报