首页 > 解决方案 > 该请求在使用 Youtube Data API v3 时缺少有效的 API 密钥

问题描述

我正在尝试获取密钥并在控制台上显示结果,但它不起作用。我为此目的使用 React.js。

import axios from "axios";

const KEY = "MY_Key Here";

export default axios.create({
 baseURL: "https://www.googleapis.com/youtube/v3",
  params: {
   part: "snippet",
   maxResults: 5,
   key: KEY,
  },
});

和 App.js 包含这个

onTermSubmit = async (term) => {
  const response = await youtube.get("/search", {
    params: {
      q: term
    },
  });
  console.log(response);
};

每次我执行此操作时,它都会显示“请求缺少有效的 api 密钥”域 =“全局”原因 - “禁止”和状态 =“拒绝”。

标签: reactjsyoutube-data-api

解决方案


确保添加所有这些参数:{ part: "snippet", maxResults: 5, key: KEY, }

在您的 App.js 中并将其从 youtube.js 参数中删除:{ q: term },

这里,

你的 App.js 的结束代码看起来像

参数:{部分:“片段”,maxResults:5,键:KEY,q:术语}

这是因为在您从 youtube.js 获取 baseURl 之后,它直接获取您的 App.js 参数,该参数仅包含 {q} ,因此 pgm 永远没有机会实际读取密钥


推荐阅读