Мне нужно вызвать API propublica. Пример вызова, который у них есть, использует cURL:
-H "X-API-Key: PROPUBLICA_API_KEY"
Как мне переписать его в axios.
Я пробовал это и не работает, получить неопределенный ответ.
axios.get('"https://api.propublica.org/congress/v1/members/{house}/{FL}/current.json/X-API-Key/APIKEY '), ]).then(axios.spread((response1, response2) => { console.log(response1.data.url); })).catch(error => { console.log(error); }); ```
параметр -H - передавать параметр в качестве заголовка, а не в качестве параметра запроса или в качестве части URL-адреса. Вы должны сделать что-то вроде этого:
-H
axios.get(url, { headers: { 'X-API-Key': headerKey } })
Это работает, спасибо за ответы.
const axios = require('axios'); axios.request({ url: "https://api.propublica.org/congress/v1/members/house/FL/current.json", headers: { 'X-API-Key': "API-KEY" }, method: 'get' }).then(response => { // console.log(response.data.url); console.log(response.data) }).catch(error => { console.log(error); });
Используя расширение RESTClient для Firefox, это сработало для меня:
https://api.propublica.org/congress/v1/116/senate/members.json
с помощью X-API-ключа заголовка: my-personal -key. Таким образом, используя axios, вы можете использовать:
let url = 'https://api.propublica.org/congress/v1/116/senate/members.json'; axios.get(url, { headers: { 'X-API-Key': headerKey } } ) .then (res=>console.log(res)) .catch(err => console.log(err));