Как предоставить учетные данные API в HTTP POST с использованием XMLHttpRequest - PullRequest
0 голосов
/ 17 мая 2019

У меня есть следующий скрипт Curl, который использует Twilio Verify API для отправки 6-значного кода подтверждения на телефон пользователя:

curl -X POST https://verify.twilio.com/v2/Services/[your_service_sid]/Verifications \
--data-urlencode "To=[phone_number]" \
--data-urlencode "Channel=sms" \
-u [your_account_sid]:[your_auth_token]

Я использую XMLHttpRequest, чтобы отправить свой запрос следующим образом:

const Http = new XMLHttpRequest();
const url='https://verify.twilio.com/v2/Services/' + service_SID + '/Verifications';
Http.open("POST", url);

Http.setRequestHeader(account_SID + ":" + auth_token);

Http.send("To=+1" + this.phone + "&Channel=sms");
Http.onreadystatechange=(e)=>{
    console.log(Http.responseText)
}

Когда я пытался добавить это в форму регистрации на моем веб-сайте, я продолжал получать ошибки аутентификации, потому что я не передаю свои токены должным образом. Мое сообщение об ошибке:

{"code": 20003, "detail": "Your AccountSid or AuthToken was incorrect.", "message": "Authentication Error - No credentials provided", "more_info": "https://www.twilio.com/docs/errors/20003", "status": 401}

Что я делаю не так? Как правильно предоставить свои учетные данные API с помощью XMLHttpRequest? Я попытался провести исследование подобных проблем и не смог найти ответ ни в одной из встреченных мне документов.

Заранее спасибо.

...