Мой проект полностью в ReactJS. Я использую Ax ios для вызовов API. Я получаю сообщение об ошибке 403 после вызова для получения возобновляемого URL-адреса из корзины облака Google.
Полная ошибка: SignatureDoesNotMatch. Рассчитанная нами подпись запроса не соответствует предоставленной вами подписи. Проверьте ваш секрет Google и метод подписи.
Мой код:
axios.post(`${process.env.REACT_APP_BASE_URL}/uploads/authorization`, data, {
headers: {
'content-type': 'application/json',
'Authorization': 'Bearer ' + this.state.bearer_token
},
})
.then(res => { // then print response status
axios.post(`https://cors-anywhere.herokuapp.com/${res.data.uploadUrl}`, null, {
headers: {
'Access-Control-Allow-Origin': '*',
'x-goog-resumable': 'start'
}
})
.then(res=> {
console.log("second post response",res.data)
axios.put(`${res.headers.Location}`, this.state.selectedFile[0], {
headers: {
'content-type': this.state.uploadType
},
onUploadProgress: ProgressEvent => {
this.setState({
loaded: (ProgressEvent.loaded / ProgressEvent.total*100),
})
},
})
.then(res=> {
console.log("put response",res.data)
toast.success('upload success')
})
.catch(err => { // then print response status
console.log("put ERROR: ", err)
toast.error('upload fail')
})
})
.catch(err => { // then print response status
console.log("second post ERROR: ", err)
toast.error('upload fail')
})
})
.catch(err => { // then print response status
console.log("ERROR: ", err)
toast.error('upload fail')
})
Странно, что, когда я передаю тот же URL через почтальона, он выдает правильный вывод. Не знаете, что здесь происходит не так? Может ли кто-нибудь помочь мне, пожалуйста.