删除 Contentful CreateClient API 请求的默认值 header

Delete default header for Contentful CreateClient API request

我正在将 Contentful 作为 CMS 集成到我的 React Web 应用程序中。 npm 包 contentful 允许访问使用 createClient 方法存储的内容。此方法使用 Axios 创建内容传送请求 API.

client = contentful.createClient({
        space: *** ,
        accessToken:  *** 
})

// getting data 
fetchPosts = () => this.client.getEntries()

但问题是——我已经在我的应用程序中使用了 Axios,并且通过我的 React 客户端发出的每个请求都包含默认的通用 header auth-token。因此,我的 HTTP 请求出现以下错误 - Request header field auth-token is not allowed by Access-Control-Allow-Headers in preflight response.

我尝试将整个 header 设置为空 object 并将 auth-token 设置为未定义 但这无济于事,因为我的请求仍会包含我默认 header -

的密钥
client = contentful.createClient({
        space: *** ,
        accessToken:  ***, 
        headers: {} 
})

// OR

client = contentful.createClient({
        space: *** ,
        accessToken:  ***, 
        headers: { 'auth-token' : undefined } 
})

我遇到了这个 并且它回答了如何修改一个请求以不包含常见的 header 但我不确定如何使用它来修改 createClient 方法. 感谢您的帮助。

在不使用 contentful's javascript SDK 的情况下尝试了以下方法并且有效:

  1. 针对特定请求修改 Axios 实例以删除您的默认 headers
  2. 使用基本(+ 普通)URL 访问内容交付 API。
const url = 
      `${baseUrl}/spaces/${spaceId}/environments/master/entries?access_token=${accessToken}` ;

axios.get(url, {
      transformRequest: (data, headers) => {
          delete headers.common['auth-token'];
          return data;
   }
})