Я пытаюсь отправить запрос PUT на назначенный URL-адрес amazonS3. Мой запрос, кажется, называется дважды, даже если у меня есть только один запрос PUT. Первый запрос возвращает 200 OK
, второй возвращает 400 Bad Request
.
Вот мой код:
var req = {
method: 'PUT',
url: presignedUrl,
headers: {
'Content-Type': 'text/csv'
},
data: <some file in base64 format>
};
$http(req).success(function(result) {
console.log('SUCCESS!');
}).error(function(error) {
console.log('FAILED!', error);
});
Ошибка 400 Bad Request
более подробно:
<?xml version="1.0" encoding="UTF-8"?>
<Error>
<Code>InvalidArgument</Code>
<Message>Only one auth mechanism allowed; only the X-Amz-Algorithm query parameter, Signature query string parameter or the Authorization header should be specified</Message>
<ArgumentName>Authorization</ArgumentName>
<ArgumentValue>Bearer someToken</ArgumentValue>
<RequestId>someRequestId</RequestId>
<HostId>someHostId</HostId>
</Error>
Я не понимаю, почему он возвращает 400? и Какое обходное решение?