Javascript 自动为所有api传递api密钥

Javascript 自动为所有api传递api密钥,javascript,reactjs,api,Javascript,Reactjs,Api,如何为reactjs/javascript上的所有api设置api键?我有这个问题我认为这一切归结为每个请求的默认头。就我个人而言,我会这样做 const defaultHeaders = { "Authorization": "Bear --some-secret-token--", "Content-Type": "application/json" } const get = (url, params

如何为reactjs/javascript上的所有api设置api键?我有这个问题

我认为这一切归结为每个请求的默认头。就我个人而言,我会这样做

const defaultHeaders = {
  "Authorization": "Bear --some-secret-token--",
  "Content-Type": "application/json"
}

const get = (url, params, headers) => {
  return fetch(
    url,
    {
      method: "GET",
      headers: {
        ...defaultHeaders,
        ...headers,
      }
    }
  )
  .then(response => response.json())
};

const post = (url, body, headers) => {
  return fetch(
    url,
    {
      method: "POST",
      body: JSON.stringify(body),
      headers: {
        ...defaultHeaders,
        ...headers,
      }
    }
  )
  .then(response => response.json())
};

get('https://jsonplaceholder.typicode.com/todos/1');
post('https://jsonplaceholder.typicode.com/posts', {
    title: 'foo',
    body: 'bar',
    userId: 1,
  });
我导出现成的方法来覆盖一些默认的标题


如果您使用Axios,您可以按照@crashmstr的建议操作。但是如果您使用常规获取,这绝对不是一个坏主意。

这可能取决于您使用什么进行API调用。它是query paramjQuery?选择似乎是可行的。例如,对于Axios,您可以添加一个请求拦截器。