Vue.js Vue Firebase验证ID令牌CORS问题

Vue.js Vue Firebase验证ID令牌CORS问题,vue.js,cors,firebase-authentication,firebase-admin,Vue.js,Cors,Firebase Authentication,Firebase Admin,我正在尝试按照说明使用Firebase Admin SDK验证ID令牌。我当前的身份验证代码如下(在Vue中): 登录工作正常,我可以得到完美的结果。但是,函数getIdToken似乎是问题所在,因为我在控制台上遇到以下错误: Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://securetoken.googleapis.com/v1/to

我正在尝试按照说明使用Firebase Admin SDK验证ID令牌。我当前的身份验证代码如下(在Vue中):

登录工作正常,我可以得到完美的结果。但是,函数
getIdToken
似乎是问题所在,因为我在控制台上遇到以下错误:

Cross-Origin Request Blocked: 
The Same Origin Policy disallows reading the remote resource at 
https://securetoken.googleapis.com/v1/token?key=AIzaSyApp5yu051vMJlNLoQ1ngVSd-f2k7Pdavc. 
(Reason: CORS request did not succeed).
在我的请求列表中,挂起的是一个选项方法,具有以下标题:

OPTIONS /v1/token?key=AIzaSyApp5yu051vMJlNLoQ1ngVSd-f2k7Pdavc HTTP/1.1
Host: securetoken.googleapis.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:62.0) Gecko/20100101 Firefox/62.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.8,pt-BR;q=0.5,de;q=0.3
Accept-Encoding: gzip, deflate, br
Access-Control-Request-Method: POST
Access-Control-Request-Headers: x-client-version
Origin: http://localhost:8080
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
我甚至不知道问题出在哪里。是从Vue那边来的吗?我正在开发服务器上运行它(通过简单的
warn-serve
,vue cli 3)。解决方案是在可以实际配置cors的生产服务器上运行Vue吗

关于此事的任何消息都是非常受欢迎的。。。 谢谢

找到了答案。 我打错电话了。有帮助的是,这为我指出了选项请求的内容:

“prefleed”请求首先通过OPTIONS方法向另一个域上的资源发送HTTP请求,以确定实际请求是否可以安全发送。跨站点请求是这样预处理的,因为它们可能会影响用户数据


所以我意识到我不应该在我得到授权的Post请求中发送这个请求。将其移动到另一个方法使其工作。

我知道,如果我可以控制请求(如使用Axios),我可以使用代理,但这种情况是不可能的,因为它是执行请求的firebase函数。。。我知道我可以将cors与express结合使用,并使用express构建和服务vue。。。但这意味着每次我想测试的时候我都要构建。。。这是唯一的解决办法吗??
OPTIONS /v1/token?key=AIzaSyApp5yu051vMJlNLoQ1ngVSd-f2k7Pdavc HTTP/1.1
Host: securetoken.googleapis.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:62.0) Gecko/20100101 Firefox/62.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.8,pt-BR;q=0.5,de;q=0.3
Accept-Encoding: gzip, deflate, br
Access-Control-Request-Method: POST
Access-Control-Request-Headers: x-client-version
Origin: http://localhost:8080
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache