Эксиос эквивалент этой команды curl - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь преобразовать следующий локон в axios GET-запрос для использования в React Native.

Вот что я хочу конвертировать:

$ curl --get --user ${client_id}:${client_secret} \
 https://api.shutterstock.com/v2/images/search \
 --data-urlencode "query=donkey" \
 --data-urlencode "page=2" \
 --data-urlencode "per_page=1"

Выход выше:

{"page":2,"per_page":1,"total_count":42019,"search_id":"g3gruNqeXTnAOggCv9s9hA","data":[{"id":"384331075","aspect":1.1607,"assets":{"preview":{"height":387,"url":"https://image.shutterstock.com/display_pic_with_logo/3969413/384331075/stock-photo-laughing-donkey-good-and-funny-donkey-the-portrait-the-best-photo-of-donkey-in-the-world-384331075.jpg","width":450},"small_thumb":{"height":86,"url":"https://thumb7.shutterstock.com/thumb_small/3969413/384331075/stock-photo-laughing-donkey-good-and-funny-donkey-the-portrait-the-best-photo-of-donkey-in-the-world-384331075.jpg","width":100},"large_thumb":{"height":129,"url":"https://thumb7.shutterstock.com/thumb_large/3969413/384331075/stock-photo-laughing-donkey-good-and-funny-donkey-the-portrait-the-best-photo-of-donkey-in-the-world-384331075.jpg","width":150},"huge_thumb":{"height":260,"url":"https://image.shutterstock.com/image-photo/laughing-donkey-good-funny-portrait-260nw-384331075.jpg","width":302}},"contributor":{"id":"3969413"},"description":"Laughing donkey - good and funny donkey. The Portrait. The best photo of donkey in the world. Northern Cyprus. Karpasia. Karpaz. Dipkarpaz. Rizokarpaso. Apostolos Andreas cape donkey","image_type":"photo","media_type":"image"}],"spellcheck_info":{}}

Вот что я сделал, и он просто возвращает ошибку 401:

axios.get("https://api.shutterstock.com/v2/images/search?query=donkey&page=2&per_page=1",{ headers: {
      'Authorization': 'Basic client_id:client_secret'
    }}).then(res => console.log((res)));

Также пробовал со следующим, но получил ошибку 401:

axios.get("https://api.shutterstock.com/v2/images/search?query=donkey&page=1&per_page=1",{ headers: {
  user: client_id:client_secret
}}).then(res => console.log((res)));

axios.get("https://api.shutterstock.com/v2/images/search?query=donkey&page=1&per_page=1",{ headers: {
  user: client_id, pass: client_secret
}}).then(res => console.log((res)));

Должен ли я преобразовывать client_id:client_key в base64encoded строку? Кроме того, как я могу включить параметры запроса в запрос, не добавляя только URL?

1 Ответ

0 голосов
/ 02 июля 2018

Я все равно понял.

axios({
      baseURL: 'https://api.shutterstock.com/v2/images/search?query=donkey&page=1&per_page=1',
      auth: { username: 'CLIENT_ID', password: 'CLIENT_SECRET'},
      params: { query: 'donkey', page: '1', per_page: '1' }  
}).then(res => console.log(res));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...