【问题标题】:ReactJS- Youtube Data API request error 400ReactJS- Youtube 数据 API 请求错误 400
【发布时间】:2019-11-10 17:40:38
【问题描述】:

我使用的是 YouTube 数据 API。我确实设置了参数,但是从开发人员工具打开网络时显示错误:'Required parameter:part'

axios 代码-

import axios from 'axios';

const KEY='[my key]'

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

发送API请求的回调函数

termSearch= (term)=>
    {   
        console.log(term)
        youtube.get('/search',{
            params:
            {
                q:term
            }
        })

我希望收到 JSON 响应,但控制台显示 - 错误:GET https://www.googleapis.com/youtube/v3/search?q=asdas400

【问题讨论】:

    标签: reactjs axios youtube-data-api http-status-code-400


    【解决方案1】:

    Axios 上似乎存在一个未解决的问题,请求参数未与实例参数合并。因此,您的 axios.create(...) 中的 params 对象在您的回调中没有被正确使用。

    也许您可以尝试将Axios 降级为版本:0.18.1,直到修复补丁?这似乎是其他人在此特定情况下及时使用的解决方法。

    希望对您有所帮助!

    【讨论】:

      【解决方案2】:

      q参数之前的回调函数中,添加Axios代码中Param代码的所有参数,你的回调函数应该是这样的:

      termSearch= (term)=>
          {   
              console.log(term)
              youtube.get('/search',{
                  params:
                  {
                   part:'snippet',
              maxResults:5,
              key: 'your_Api_KEY'
                      q:term
                  }
              })
      

      并且不要更改您的 Axios 代码。应该是这样的

      import axios from 'axios';
      const KEY='[my key]'
      export default axios.create({
              baseURL:'https://www.googleapis.com/youtube/v3',
              params:
              {
                  part:'snippet',
                  maxResults:5,
                  key: KEY
              }
          })
      

      【讨论】:

        猜你喜欢
        • 2011-06-18
        • 2018-09-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-11-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多