ошибка 400 при попытке добавить разделенную запятыми строку в конец вызова API - PullRequest
0 голосов
/ 23 октября 2019

Этот вызов API занимает разделенный запятыми список в конце URL-адреса.

Если я добавлю данные в конце URL-адреса следующим образом:

const matchDetails = await axios.get(`http://api.paladins.com/paladinsapi.svc/getmatchdetailsbatchJson/${devId}/${generateSignature("getmatchdetailsbatch")}/${session}/${moment.utc().format('YYYYMMDDHHmmss')}/${small[0]},${small[1]}`)

Это сработает, и я получу обратно то, что ожидается.

Однако,переменная small содержит около 700 идентификаторов. Не было бы смысла печатать это в 700 раз. Поэтому я попытался сделать это:

const matchDetails = await axios.get(`http://api.paladins.com/paladinsapi.svc/getmatchdetailsbatchJson/${devId}/${generateSignature("getmatchdetailsbatch")}/${session}/${moment.utc().format('YYYYMMDDHHmmss')}/${small.join(",")}`)

И это дает мне ошибку 400 неверных запросов

Uncaught (in promise) Error: Request failed with status code 400
at createError (createError.js:17)
at settle (settle.js:19)
at XMLHttpRequest.handleLoad (xhr.js:60)

Что я делаю не так? Как мне поступить об этом?

1 Ответ

0 голосов
/ 23 октября 2019

Я думаю, вполне вероятно, что ваш запрос GET слишком длинный. Вы должны передать их в теле запроса POST. Если это не ваш API, и вы не можете этого сделать, вам нужно разбить его на куски. Запросите 20 идентификаторов одновременно или что-то в этом роде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...