Заголовки HTTP Авторизации Javascript

В настоящее время я пытаюсь настроить запрос POST к API REST (Cloudsight) с базовой авторизацией. Мой код до сих пор:

var xhr = new XMLHttpRequest();

xhr.open("POST", "http://api.cloudsightapi.com/image_requests", true);
xhr.setRequestHeader("Authorization:", "CloudSight [key]");
xhr.setRequestHeader("Content-Type", "http://previews.123rf.com/images/valzann/valzann1412/valzann141200061/34262193-cigarette-end-on-a-white-background-Stock-Photo.jpg");

xhr.send(null);
console.log(xhr.status);
console.log(xhr.statusText);

Когда я пытаюсь запустить его, я получаю сообщение об ошибке: Uncaught SyntaxError: Не удалось выполнить setRequestHeader для XMLHttpRequest: Authorization: недопустимое имя поля заголовка HTTP.

Кто-нибудь знает, что не так с кодом? Я очень новичок в Ja vascript и API, но буду очень признателен за ответ. (Вот ссылка на документацию Cloudsight, если это поможет: https://cloudsight.readme.io/ Я просмотрел ее и попытался найти другие примеры Ja vascript HTTP-заголовка авторизации, но безуспешно.)

1 ответ

Решение

Вам не нужно : при поставке заголовков. Удалить их из:

xhr.setRequestHeader("Authorization:", ...

Теперь запрос проходит, но возвращается другая ошибка, которую вы должны обработать с вашей стороны. Я думаю, это не будет проблемой.

Это касается каждого заголовка, а не только Authorization, Надеюсь, что это решит вашу проблему.

Другие вопросы по тегам