服務器A請求服務器B的接口,那么一般會出現跨域問題。
XMLHttpRequest cannot load http://api.console.vms3.com/api/user. No "Access-Control-Allow-Origin" header is present on the requested resource. Origin "http://localhost:8080" istherefore not allowed access.
意思就是服務器響應不允許跨域訪問.
那我們就需要讓服務器支持跨域訪問, 也就是在響應頭部中添加
"Access-Control-Allow-Origin: *"第一步: 創建中間件
創建 `app/Http/Middleware/AccessControlAllowOrigin.php` middleware 把 "Access-Control-Allow-Origin: *" 寫入頭部. app/Http/Middleware/AccessControlAllowOrigin.php 第二步: 注冊路由注冊這個 middleware 到 kernel 中.
第三步: 設置中間件保護接口
分別在 protected $middleware 數組中和 protected $routeMiddleware 數組中
添加我們剛才創建的那個文件class名, 使用 cors 這個別名.然后在設置它保護 api , 就是$middlewareGroups["api"] 的數組中添加它的別名, 本文中是 "cors"
app/Http/Kernel.php[ AppHttpMiddlewareEncryptCookies::class, IlluminateCookieMiddlewareAddQueuedCookiesToResponse::class, IlluminateSessionMiddlewareStartSession::class, // IlluminateSessionMiddlewareAuthenticateSession::class, IlluminateViewMiddlewareShareErrorsFromSession::class, AppHttpMiddlewareVerifyCsrfToken::class, IlluminateRoutingMiddlewareSubstituteBindings::class, ], "api" => [ "throttle:60,1", "bindings", "cors" ], ]; /** * The application"s route middleware. * * These middleware may be assigned to groups or used individually. * * @var array */ protected $routeMiddleware = [ "auth" => IlluminateAuthMiddlewareAuthenticate::class, "auth.basic" => IlluminateAuthMiddlewareAuthenticateWithBasicAuth::class, "bindings" => IlluminateRoutingMiddlewareSubstituteBindings::class, "can" => IlluminateAuthMiddlewareAuthorize::class, "guest" => AppHttpMiddlewareRedirectIfAuthenticated::class, "throttle" => IlluminateRoutingMiddlewareThrottleRequests::class, "cors" => AppHttpMiddlewareAccessControlAllowOrigin::class, ]; }第四步:在路由中添加路由Route::middleware("cors")->group(function () { // });
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/29563.html
摘要:合適和夠用是最完美的追求。比如從頁面去請求的資源。它允許瀏覽器向跨源服務器,發出請求,從而克服了只能同源使用的限制。定義在中的路由都是無狀態的,并且會應用中間件組。 關于作者 程序開發人員,不拘泥于語言與技術,目前主要從事PHP和前端開發,使用Laravel和VueJs,App端使用Apicloud混合式開發。合適和夠用是最完美的追求。 個人網站:http://www.linganm...
摘要:合適和夠用是最完美的追求。比如從頁面去請求的資源。它允許瀏覽器向跨源服務器,發出請求,從而克服了只能同源使用的限制。定義在中的路由都是無狀態的,并且會應用中間件組。 關于作者 程序開發人員,不拘泥于語言與技術,目前主要從事PHP和前端開發,使用Laravel和VueJs,App端使用Apicloud混合式開發。合適和夠用是最完美的追求。 個人網站:http://www.linganm...
摘要:合適和夠用是最完美的追求。比如從頁面去請求的資源。它允許瀏覽器向跨源服務器,發出請求,從而克服了只能同源使用的限制。定義在中的路由都是無狀態的,并且會應用中間件組。 關于作者 程序開發人員,不拘泥于語言與技術,目前主要從事PHP和前端開發,使用Laravel和VueJs,App端使用Apicloud混合式開發。合適和夠用是最完美的追求。 個人網站:http://www.linganm...
摘要:跨域的請求出于安全性的原因,瀏覽器會限制中的跨域請求。跨源共享標準需要瀏覽器和服務端共同配合才能完成,目前瀏覽器廠商已經可以將請求部分自動完成,所以跨源資源訪問的重點還是在于服務器端。指明預請求或者跨域請求的來源。 跨域的請求 出于安全性的原因,瀏覽器會限制 Script 中的跨域請求。由于 XMLHttpRequest 遵循同源策略,所有使用 XMLHttpRequest 構造 HT...
閱讀 2955·2021-11-24 09:39
閱讀 2863·2021-09-29 09:34
閱讀 3558·2021-09-24 10:23
閱讀 1744·2021-09-22 15:41
閱讀 1697·2019-08-30 15:55
閱讀 3512·2019-08-30 13:58
閱讀 2621·2019-08-30 13:11
閱讀 1667·2019-08-29 12:31