当前位置: 首页 > 知识库问答 >
问题:

Params对象(API密钥)不与axios.create一起发送

傅花蜂
2023-03-14

我正在使用axios向MovieDB API发出get请求。创建实例。我附加的包含API密钥的params对象未随请求一起发送。

使用axios时,请求工作正常。使用axios,但不要使用axios。创造

import axios from "axios";

export default axios.create({
  baseURL: "https://api.themoviedb.org/3",
  params: {
    api_key: MY_API_KEY
  }
});

我收到错误代码401。

共有1个答案

鲁品
2023-03-14

您可以使用参数序列化器:

export const client = Axios.create({
    baseURL: process.env.API_URL,
    paramsSerializer: (params) => {
        const serializedParams = qs.stringify(params, {arrayFormat: 'repeat'});
        return `${serializedParams}&APPID=${process.env.API_KEY}`;
    }
});

在实施此操作之前,请确保您需要安装qs:

npm i qs

 类似资料:
  • 有没有一种方法可以使用带有API键的“GoogleSheetJavaAPI”,而不是示例中给出的OAuth https://developers.google.com/sheets/api/quickstart/java 我知道您可以使用HTTP请求通过API键获取数据,但我在想,是否有一种方法可以使用google提供的Java API来实现这一点,这样我就不必为每个请求解析JSON。

  • 问题内容: 我正在通过GoDaddy设置SSL,以与AWS EC2上的node.js服务器一起使用。我一直无法启动它。 这是我尝试过的: 打算用于域:files.mysite.com 在服务器上,我运行: 然后,我得到CSR:vim files.mysite.csr 我从以下位置复制并粘贴: 最后还有一个空行,我使用rekey离开并粘贴到GoDaddy界面中。 然后,我下载godaddy密钥,该密

  • 我正在尝试加密C#客户端和iSeries服务器之间的通信,但遇到了一些问题。我正在尝试使用Diffie Hellman创建共享秘密,但共享秘密不匹配。 我在C#中使用Bouncy Castle,在iSeries上使用QC3*API。步骤是: C# 客户端生成 DH 参数,并将其与客户端公钥一起发送到服务器。 C服务程序对参数进行解码,调用QC3GENDK创建服务器公钥。 服务器使用客户端公钥调用

  • 我遇到了很多文章,很多文章建议使用OAuth over API密钥。据我所知,在OAuth中,我们最终获得了访问令牌,它的有效期为很多天。例如,QuickBooks online OAuth令牌的有效期为6个月。 因此,访问令牌等同于API Key。无论谁得到它,都应该像API密钥一样保护它。OAuth调用应该通过HTTPS进行,类似于基于API Key的调用。 相对于OAuth的另一个优势是授权

  • 问题内容: 由于某种原因,我无法将字符“ 3”写入页面上的输入元素。 这段代码: 导致在登录输入中写入“ 1245” …有人可以帮忙吗?我使用python 2.7,最新的chrome和最新的chromedriver 编辑: 也不管用。 -字符串中仅缺少“ 3” … 起作用的是 正如安德森(Andersson)在下文中建议的那样,但这不是解决方案。 我在Google搜索框中进行了尝试,并且遇到了相同