[英]Request blocked by CORS policy using superagent and a Lumen API
我已經使用 PHP Lumen框架創建了一個 REST API,我刪除了所有用於開發的 CORS 限制:
// Enable CORS on all API routes
header('Access-Control-Allow-Origin: *');
header("Access-Control-Expose-Headers: Content-Length, X-JSON");
header('Access-Control-Allow-Methods: GET, POST, PATCH, PUT, DELETE, OPTIONS');
header('Access-Control-Allow-Headers: Origin, Authorization, Lang, Content-Type, X-Auth-Token');
然后在前端我使用庫superagent來調用它。 例如,我調用路由POST http://127.0.0.1:8000/auth/register
:
superagent.post('http://127.0.0.1:8000/auth/register').send({
name: 'name',
email: 'test@test.test',
password: '1234Test'
}).type('application/json')
.end((err, res) => {
console.log(res)
console.log(err)
})
遺憾的是,我收到一條我無法理解的 CORS 錯誤消息:
從源“ http://localhost:9000 ”訪問“ http://127.0.0.1:8000/auth/register ”的 XMLHttpRequest 已被 CORS 策略阻止:對預檢請求的響應未通過訪問控制檢查:它沒有 HTTP ok 狀態。
我做了一些研究,但我找不到任何關於錯誤的東西It does not have HTTP ok status
並且在 Postman 上測試這個相同的請求給我沒有錯誤但是正常的行為。
有人知道我該如何解決嗎? 在哪里可以找到有關此類錯誤的一些文檔?
我很好奇你為什么要自己“手動”設置標題,而不是使用一些現有的和經過驗證的 CORS-Middlewares 來為你做所有的魔法。 我會避免重新發明輪子,除非你在研究案例中需要它。
這是stackoverflow上的一個副本:
這是關於流明中間件的官方文檔:
https://lumen.laravel.com/docs/7.x/middleware
以下是一些結構良好且眾所周知的中間件,它們將為您完成這項工作:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.