Axios CORS自定义标头

时间:2019-10-04 11:18:42

标签: cors http-headers axios

我在服务器上安装了一个wordpress网站。我想限制对它的访问,以仅允许使用另一个域上的另一个网站调用AP​​I。如果请求中不包含自定义标头,则会将其重定向到另一个网站。

我已经这样定义了htaccess:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTP:X-custom-header} ^$ [NC]
    RewriteRule ^(.*)$ https://otherwebsite.com [R=301,L]
</IfModule>

第二个网站只是一个使用axos从API获取数据的React UI。 问题是我已经将axios设置为集成这样的自定义标头:

const WordpressInstance = axios.create
({
    baseURL: WordpressAPIEndPoint,
    timeout: 1000,
    headers: {
        'Content-Type': 'application/json',
        'x-custom-header': 'some value'
    }
});
WordpressInstance.defaults.headers.common['x-custom-header'] = 'some value';

由于这些是不同的域,因此axios首先发送一个OPTIONS请求。问题在于OPTIONS请求未集成自定义标头。

我该如何更改? 预先感谢您。

编辑感谢@jonrsharpe,我知道不可能在预检请求中设置自定义标头。 我如何将htaccess设置为:

  • 每次都允许选项
  • 如果未设置标头,则重定向其他所有方法

0 个答案:

没有答案