国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Laravel 5 通過中間件實現 JSON_UNESCAPED_UNICODE 和跨域控制

Baoyuan / 1660人閱讀

摘要:在路由中引用中間件有關跨域控制的更多知識請訪問訪問控制。鉆牛角尖如果需要對程序返回數據作統一加工,都可以通過實現更靈活的響應管理

做 json 接口的使用 JSON_UNESCAPED_UNICODE,能在返回大量非 ascii 字符數據的時候節約大量流量(其實就是把 uxxxx 轉換成人能看懂的中文)。在 Laravel 框架里最易懂的辦法就是用return response()->json($data, 200, [], JSON_UNESCAPED_UNICODE)返回接口數據。但是這種方法可復用性非常低,而且不太好處理 http 狀態碼問題。作為一個喜歡裝牛逼的程序員,我需要研究一個看起來很牛逼的方法,我的目標是高復用、低耦合。

經過連續施展 Google 大法,遂得出以下方法:

1 php artisan make:middleware JsonCors建立中間件,然后在handle方法里加入下面的代碼:

$data = $next($request);
if ($data instanceof IlluminateHttpJsonResponse) {
    $data->setEncodingOptions(JSON_UNESCAPED_UNICODE);
    // 下面是跨域控制代碼
    $data->withHeaders([
        "Access-Control-Allow-Origin" => "*",
        "Access-Control-Allow-Credentials" => "true",
    ]);
}
return $data;

2 修改app/Http/Kernel.php,在protected $routeMiddleware數組里加入"jsoncors" => AppHttpMiddlewareJsonCors::class,
然后在路由里引用test中間件即可。

3 在路由中引用中間件Route::middleware(["jsoncors"])

4 有關跨域控制的更多知識請訪問HTTP訪問控制(CORS)。

鉆牛角尖:

如果需要對程序返回數據作統一加工,都可以通過middleware實現更靈活的響應管理?

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/30033.html

相關文章

  • 同源策略跨域方法

    摘要:同源策略的控制者是瀏覽器,瀏覽器可以控制不同域之間的資源的訪問或相互操作,但不控制自己對不同域之間的資源的操作和訪問。 同源與跨域 一般情況下,禁止一個域從另一個域讀取數據,卻可以使用某些從其他域拿到的資源。比如說,允許一個域執行、渲染、應用從其他域獲取到的腳本、圖片、樣式;同樣,一個域可以展示從其他域獲取的內容,比如在frame中顯示html文檔。網絡資源也可以選擇性的讓其他域來讀取...

    魏憲會 評論0 收藏0
  • 如何基于 Notadd 構建 API (Laravel 寫 API)

    摘要:例如,為前兩個提供跨域的功能實現,代碼參考如下控制器由于有了獨立的處理器,控制器層可以制作簡單處理,僅需向控制器注入,并由提供的輔助方法返回數據給前臺,即可。 如何基于 Notadd 構建 API Notadd 底層實現了 passport 機制,有統一的授權管理,主要支持兩種方式進行 API 授權,一個是 client,領一個是 passport,這個在其他文檔中有做詳細的說明。 這...

    megatron 評論0 收藏0
  • Laravel 開啟跨域功能

    摘要:跨域的請求出于安全性的原因,瀏覽器會限制中的跨域請求。跨源共享標準需要瀏覽器和服務端共同配合才能完成,目前瀏覽器廠商已經可以將請求部分自動完成,所以跨源資源訪問的重點還是在于服務器端。指明預請求或者跨域請求的來源。 跨域的請求 出于安全性的原因,瀏覽器會限制 Script 中的跨域請求。由于 XMLHttpRequest 遵循同源策略,所有使用 XMLHttpRequest 構造 HT...

    muzhuyu 評論0 收藏0
  • 【日常填坑】之ajax請求laravel的api接口

    摘要:合適和夠用是最完美的追求。比如從頁面去請求的資源。它允許瀏覽器向跨源服務器,發出請求,從而克服了只能同源使用的限制。定義在中的路由都是無狀態的,并且會應用中間件組。 關于作者 程序開發人員,不拘泥于語言與技術,目前主要從事PHP和前端開發,使用Laravel和VueJs,App端使用Apicloud混合式開發。合適和夠用是最完美的追求。 個人網站:http://www.linganm...

    Arno 評論0 收藏0
  • 【日常填坑】之ajax請求laravel的api接口

    摘要:合適和夠用是最完美的追求。比如從頁面去請求的資源。它允許瀏覽器向跨源服務器,發出請求,從而克服了只能同源使用的限制。定義在中的路由都是無狀態的,并且會應用中間件組。 關于作者 程序開發人員,不拘泥于語言與技術,目前主要從事PHP和前端開發,使用Laravel和VueJs,App端使用Apicloud混合式開發。合適和夠用是最完美的追求。 個人網站:http://www.linganm...

    neu 評論0 收藏0

發表評論

0條評論

Baoyuan

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<