部署在Heroku上的前端和后端之间的CORS错误
CORS error between front and back-end both deployed on Heroku
我有部署在 heroku 上的快速api 后端。
然后我有一个 vueJs 前端...当我 运行 我的前端在本地主机上时,它会按预期使用我部署的后端。但是当我 运行 hereoku 部署前端时,它触发了 CORS 错误。
[Error] Not allowed to request resource
(fonction anonyme) (chunk-vendors.dadb741b.js:905:5476)
Promise
(fonction anonyme) (chunk-vendors.dadb741b.js:905:3329)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:9926)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:8256)
(fonction anonyme) (app.300a0e8b.js:1:8475)
asyncFunctionResume
re (chunk-vendors.dadb741b.js:2282:11801)
Fn (chunk-vendors.dadb741b.js:2282:29361)
insert (chunk-vendors.dadb741b.js:2282:21037)
O (chunk-vendors.dadb741b.js:2282:48055)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:49366)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:27206)
i (chunk-vendors.dadb741b.js:2282:28010)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:30902)
ri (chunk-vendors.dadb741b.js:2282:30819)
Dn (chunk-vendors.dadb741b.js:2282:28033)
(fonction anonyme) (app.300a0e8b.js:1:9836)
promiseReactionJob
[Error] XMLHttpRequest cannot load http://test-api.herokuapp.com/api/v3 due to access control checks.
(fonction anonyme) (chunk-vendors.dadb741b.js:905:5476)
Promise
(fonction anonyme) (chunk-vendors.dadb741b.js:905:3329)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:9926)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:8256)
(fonction anonyme) (app.300a0e8b.js:1:8475)
asyncFunctionResume
re (chunk-vendors.dadb741b.js:2282:11801)
Fn (chunk-vendors.dadb741b.js:2282:29361)
insert (chunk-vendors.dadb741b.js:2282:21037)
O (chunk-vendors.dadb741b.js:2282:48055)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:49366)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:27206)
i (chunk-vendors.dadb741b.js:2282:28010)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:30902)
ri (chunk-vendors.dadb741b.js:2282:30819)
Dn (chunk-vendors.dadb741b.js:2282:28033)
(fonction anonyme) (app.300a0e8b.js:1:9836)
promiseReactionJob
[Error] Not allowed to request resource
(fonction anonyme) (chunk-vendors.dadb741b.js:905:5476)
Promise
(fonction anonyme) (chunk-vendors.dadb741b.js:905:3329)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:9926)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:8256)
(fonction anonyme) (app.300a0e8b.js:1:8592)
asyncFunctionResume
(fonction anonyme)
promiseReactionJobWithoutPromise
promiseReactionJob
[Error] XMLHttpRequest cannot load http://test-api.herokuapp.com/api/v2 due to access control checks.
(fonction anonyme) (chunk-vendors.dadb741b.js:905:5476)
Promise
(fonction anonyme) (chunk-vendors.dadb741b.js:905:3329)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:9926)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:8256)
(fonction anonyme) (app.300a0e8b.js:1:8592)
asyncFunctionResume
(fonction anonyme)
promiseReactionJobWithoutPromise
promiseReactionJob
我在后端设置了我的 CORS :
origins = [
"https://test-front.herokuapp.com",
"http://16.11.192.108:8080/",
"http://localhost",
"http://localhost:8080",
]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
我的前端 api 调用是这样的:
await axios.get('http://test-api.herokuapp.com/api/v3')
.then(response => (this.apiInfoV3 = response.data))
.catch(error => console.log(error))
虽然看起来很傻,但诀窍就是在 http://test-api.herokuapp.com/api/v3
中的 http
中添加一个“s”,如下所示:
await axios.get('https://test-api.herokuapp.com/api/v3')...
我有部署在 heroku 上的快速api 后端。
然后我有一个 vueJs 前端...当我 运行 我的前端在本地主机上时,它会按预期使用我部署的后端。但是当我 运行 hereoku 部署前端时,它触发了 CORS 错误。
[Error] Not allowed to request resource
(fonction anonyme) (chunk-vendors.dadb741b.js:905:5476)
Promise
(fonction anonyme) (chunk-vendors.dadb741b.js:905:3329)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:9926)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:8256)
(fonction anonyme) (app.300a0e8b.js:1:8475)
asyncFunctionResume
re (chunk-vendors.dadb741b.js:2282:11801)
Fn (chunk-vendors.dadb741b.js:2282:29361)
insert (chunk-vendors.dadb741b.js:2282:21037)
O (chunk-vendors.dadb741b.js:2282:48055)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:49366)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:27206)
i (chunk-vendors.dadb741b.js:2282:28010)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:30902)
ri (chunk-vendors.dadb741b.js:2282:30819)
Dn (chunk-vendors.dadb741b.js:2282:28033)
(fonction anonyme) (app.300a0e8b.js:1:9836)
promiseReactionJob
[Error] XMLHttpRequest cannot load http://test-api.herokuapp.com/api/v3 due to access control checks.
(fonction anonyme) (chunk-vendors.dadb741b.js:905:5476)
Promise
(fonction anonyme) (chunk-vendors.dadb741b.js:905:3329)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:9926)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:8256)
(fonction anonyme) (app.300a0e8b.js:1:8475)
asyncFunctionResume
re (chunk-vendors.dadb741b.js:2282:11801)
Fn (chunk-vendors.dadb741b.js:2282:29361)
insert (chunk-vendors.dadb741b.js:2282:21037)
O (chunk-vendors.dadb741b.js:2282:48055)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:49366)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:27206)
i (chunk-vendors.dadb741b.js:2282:28010)
(fonction anonyme) (chunk-vendors.dadb741b.js:2282:30902)
ri (chunk-vendors.dadb741b.js:2282:30819)
Dn (chunk-vendors.dadb741b.js:2282:28033)
(fonction anonyme) (app.300a0e8b.js:1:9836)
promiseReactionJob
[Error] Not allowed to request resource
(fonction anonyme) (chunk-vendors.dadb741b.js:905:5476)
Promise
(fonction anonyme) (chunk-vendors.dadb741b.js:905:3329)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:9926)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:8256)
(fonction anonyme) (app.300a0e8b.js:1:8592)
asyncFunctionResume
(fonction anonyme)
promiseReactionJobWithoutPromise
promiseReactionJob
[Error] XMLHttpRequest cannot load http://test-api.herokuapp.com/api/v2 due to access control checks.
(fonction anonyme) (chunk-vendors.dadb741b.js:905:5476)
Promise
(fonction anonyme) (chunk-vendors.dadb741b.js:905:3329)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:9926)
(fonction anonyme) (chunk-vendors.dadb741b.js:905:8256)
(fonction anonyme) (app.300a0e8b.js:1:8592)
asyncFunctionResume
(fonction anonyme)
promiseReactionJobWithoutPromise
promiseReactionJob
我在后端设置了我的 CORS :
origins = [
"https://test-front.herokuapp.com",
"http://16.11.192.108:8080/",
"http://localhost",
"http://localhost:8080",
]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
我的前端 api 调用是这样的:
await axios.get('http://test-api.herokuapp.com/api/v3')
.then(response => (this.apiInfoV3 = response.data))
.catch(error => console.log(error))
虽然看起来很傻,但诀窍就是在 http://test-api.herokuapp.com/api/v3
中的 http
中添加一个“s”,如下所示:
await axios.get('https://test-api.herokuapp.com/api/v3')...