axios 和 FW/1 无法使用 headers(CORS 错误)

Axios and FW/1 unable to use headers (CORS error)

我无法在我的 axios 请求中使用 headers

这个有效

App.vue

axios
    .get(Config.BASEURL + 'pref/footer', { })
    .then(response => (this.footer = response.data))

这不

App.vue

axios
    .get(Config.BASEURL + 'pref/footer', { crossDomain: true, headers: {"Authorization":1}})
    .then(response => (this.footer = response.data))

我的终点是这样的

application.cfc

...
variables.framework.routes  = [
    // Rest
    { "$GET/rest/carousel"                  = "rest/carousel"                       },
    { "$PUT/rest/contactus"                 = "rest/contactus"                      },
    { "$POST/rest/login"                    = "restLogin/loginPOST"                 },
    { "$GET/rest/message"                   = "rest/message"                        },
    { "$GET/rest/page/:id"                  = "rest/page/slug/:id"                  },
    { "$GET/rest/page"                      = "rest/page"                           },
    { "$GET/rest/pref/:id"                  = "rest/pref/slug/:id"                  },
...

我收到如下所示的错误消息:

App.vue中,我不知道要添加什么。

问题的本质不在客户端。它在服务器端。特别是在 FW/1 中,它是 ColdFusion 的一部分。神奇的词是 preflight response。当 Axois 收到请求时,它实际上会在 GET 之前执行 OPTIONS。所以你要做的就是说服 FW 回应 OPTIONS 很长的路是明确地将 OPTIONS 添加到 variables.framework.routes,但是有一个更简单的方法这个。只需将以下内容添加到配置中即可。

application.cfc

variables.framework =   {
    ...
    preflightOptions = true,
    ...
    };