Twilio возвращается 400 Плохой запрос - PullRequest
0 голосов
/ 10 апреля 2020

Я выполняю команду curl для SMS API Twilio из Java кода. Ниже приведена команда CURL, и я отправляю данные в JSON

curl, -X, POST, https://api.twilio.com/2010-04-01/Accounts/[AccountSID]/Messages.json, -H, Content-type:application/json, -d, {"Body":"This is First Message","Form":"+120XXXXX216","To":"+91XXXXXX476"}, -u, [AccountSID]:[AuthToken]

Но я получаю ответ об ошибке twilio

{
"code": 21602,
 "message": "Message body is required.",
 "more_info": "https://www.twilio.com/docs/errors/21602",
 "status": 400
}

Есть ли что-нибудь в моей команде?

1 Ответ

0 голосов
/ 10 апреля 2020

Прочитали ли вы образец кода cURL на странице Отправка сообщений - Twilio ?

  1. Вы, кажется, вставили несколько произвольных запятых (,). Не уверен, почему вы это сделали, но нигде в документации Twilio (ссылка выше) не упоминается об их использовании. Если это связано с вашей Java реализацией этой команды, вы должны предоставить дополнительный контекст вокруг этого (то есть, как выполняется вызов в вашем коде).
  2. Также в связанном примере, параметры URL отправляются с помощью переключателя --data-urlencode, который выполняет кодирование URL-адреса немного больше, чем переключатель -d.
  3. Хотя это не имеет прямого отношения к полученному в настоящее время сообщению об ошибке, вы также пытаетесь передать параметр с именем Form, когда очевидно, что вы имели в виду From.

Попробуйте это:

curl -X POST https://api.twilio.com/2010-04-01/Accounts/[AccountSID]/Messages.json --data-urlencode "Body=This is First Message" --data-urlencode "From=+120XXXXX216" --data-urlencode "To=+91XXXXXX476" -u [AccountSID]:[AuthToken]
...