Bing Video Search API 401:由于缺少订阅密钥而导致访问被拒绝

时间:2019-05-06 05:06:19

标签: javascript api axios bing

我正在使用axios向Bing Video Search API发出获取请求。我相信我使用的是正确的代码来发出请求,但我一直收到401:由于缺少订阅密钥而导致访问被拒绝。我在标题中包含了必需的订阅密钥,但是仍然出现此错误。任何帮助将不胜感激。

export const fetchBingVideos = term => async dispatch => {
const res = await axios.get(
    "https://api.cognitive.microsoft.com/bing/v7.0/videos/search",
    {
        headers: {
            "Ocp-Apim-Subscription-Key": "*************"
        }
    },
    {
        params: {
            count: 10,
            mkt: "en-US",
            q: term
        }
    }
);

dispatch({ type: FETCH_OFFENSE_VIDEOS, payload: res.data.items });
};

1 个答案:

答案 0 :(得分:1)

我认为您的问题是paramsheaders应该是同一对象的一部分。 axios.get()仅接受两个参数,但您要提供三个参数。

尝试

axios.get('https://api.cognitive.microsoft.com/bing/v7.0/videos/search', {
  headers: {
    'Ocp-Apim-Subscription-Key': '**********'
  },
  params: {
    count: 10,
    mkt: 'en-US,
    q: term
  }
})