Проблема шлюза API AWS для метода HTTP - PullRequest
0 голосов
/ 24 мая 2018

Я создал API-интерфейс AWS для HTTP-метода PUT.Когда я делаю тестирование в API-шлюзе, оно работает нормально, но когда я вызываю его из REST-клиента, я получаю ошибки 404 bad-request и missing authentication token.Я не установил авторизацию на true или требуемый ключ API на true.

Я передал эти параметры запроса клиенту REST:

auth_id : 8798iuyiu123123
time_stamp :1231231
test_json : [{"id"=>"1","value"=>"mount"},{"id"=>"2","value"=>"chart"}]

HEADER
content-type : application/json

Когда я изменяюtest_json значение для %5B%7B%22id%22:%221%22,%22value%22:%22test%22%7D,%7B%22id%22:%222%22,%22value%22:%2213+%D8%B4%D8%A7%D8%B1%D8%, тогда я получаю ответ.

Я новичок в реакции, звоню из реакции

Request.put('https://api-gateway.sqwdwed123.com/eretw/update-chart')
.set('Content-Type', 'application/json')
.query({ auth_id: localStorage.auth_id})
.query({ time_stamp:this.props.time_stamp})
.query({ test_json:JSON.stringify(newadd)})

Должен ли я пройти этот test_json через тело?

Я что-то не так делаю?

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

Ответ HTTP на неверный запрос вызван тем, что у вас есть параметр запроса, который не закодирован в URL.Теперь вы можете сделать 2 вещи:

  1. Передать test_json как параметр запроса, но убедитесь, что они закодированы в URL.Это накладывает ограничение на размер строки и, следовательно, не рекомендуется.

  2. Передать test_json в качестве тела запроса.(Рекомендуется)

0 голосов
/ 24 мая 2018

Обычно это связано с запросом несуществующего URL.Убедитесь, что вы используете правильный HTTP-метод и путь к допустимому ресурсу (пример URL-адреса для вызова не содержит пути к ресурсу).Если это все еще не работает.Убедитесь, что вы действительно развернули свой API.

...