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

資訊專欄INFORMATION COLUMN

Laravel學習:請求到響應的生命周期

OBKoro1 / 2930人閱讀

摘要:請求處理階段請求處理階段首先是準備請求處理的環境,包括環境加載服務提供者注冊等環節,然后將請求實例通過中間件處理及通過路由和控制器的分發控制,使得不同的請求通過相應的處理程序進行處理并生成響應的過程。

Laravel請求到響應的整個執行過程,主要可以歸納為四個階段,即程序啟動準備階段、請求實例化階段、請求處理階段、響應發送和程序終止階段。

程序啟動準備階段

服務容器實例化

服務容器的實例化和基本注冊,包括了服務容器本身注冊、基礎服務提供者注冊、核心類別名注冊和應用的基本路徑注冊。注冊的服務只是具體的類名,是通過反射機制來實例化對象,并且通過反射機制自動解決構造函數中的依賴關系。

核心類實例化

核心類實例化是服務容器實例化后,通過核心類別名注冊服務來得到的服務容器自動實例化對象。如:index.php中的Kernel類實例化:

$kernel = $app->make(IlluminateContractsHttpKernel::class);
請求實例化階段

請求是客戶端發送的一個請求報文,包括請求行、請求首部和請求實體。Laravel將其分類并保存在IlluminateHttpRequest類的實例對象中,也就是說將請求轉化為一個實例對象。請求實例的創建是通過IlluminateHttpRequest類的capture()靜態方法完成的,即:

$request = IlluminateHttpRequest::capture();

但在capture()方法中,可以看出Laravel的請求實例是在Symfony請求實例的基礎上創建的。而Symfony是通過PHP的全局數組$_GET、$_POST、$_COOKIE、$_FILE和$_SERVER作為參數來實例化請求的。

請求處理階段

請求處理階段首先是準備請求處理的環境,包括環境加載、服務提供者注冊等環節,然后將請求實例通過中間件處理及通過路由和控制器的分發控制,使得不同的請求通過相應的處理程序進行處理并生成響應的過程。

響應發送和程序終止階段

響應發送

Laravel的響應處理類是IlluminateHttpResponse類,該類的底層也是在Symfony的Response類。響應的發送包括兩部分內容:響應頭信息的發送和響應主體內容的發送。

程序終止

Laravel中,終止程序主要是完成終止中間件的調用。

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

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

相關文章

  • 深度挖掘 Laravel 生命周期

    摘要:引導程序包括完成環境檢測配置加載異常處理注冊服務提供者注冊啟動服務這六個引導程序。處理請求請求處理發生在內核的方法內。發送響應頭部信息發送報文主題終止程序程序終止,完成終止中間件的調用終止中間件以上便是的請求生命周期的始末。 本文首發于個人博客 深度挖掘 Laravel 生命周期,轉載請注明出處。 這篇文章我們來聊聊 「Laravel 生命周期」 這個主題。雖然網絡上已經有很多關于這個...

    arashicage 評論0 收藏0
  • Laravel 請求生命周期

    摘要:應用實例所依賴的服務提供者可以在配置文件中的節點找到。完成所有服務提供者注冊到應用實例后,應用實例執行啟動方法引導項目啟動。或內核接收到請求,加載服務提供者,同時,將請求分發給路由器執行。 這是一篇翻譯文章,原文 Request Life Cycle of Laravel,譯文 Laravel 請求生命周期 首發于個人博客,轉載請注明出處。 當需要使用一個框架、工具或者服務時,在使用前...

    junfeng777 評論0 收藏0
  • 深入剖析 Laravel 服務容器

    摘要:劃下重點,服務容器是用于管理類的依賴和執行依賴注入的工具。類的實例化及其依賴的注入,完全由服務容器自動的去完成。 本文首發于 深入剖析 Laravel 服務容器,轉載請注明出處。喜歡的朋友不要吝嗇你們的贊同,謝謝。 之前在 深度挖掘 Laravel 生命周期 一文中,我們有去探究 Laravel 究竟是如何接收 HTTP 請求,又是如何生成響應并最終呈現給用戶的工作原理。 本章將帶領大...

    abson 評論0 收藏0
  • 了解swoole運行模式,加速laravel應用

    摘要:負責解釋執行文件生成響應,最終返回給,展現至前端。相比于傳統架構,進程模型最大的特點在于其多線程模式處理網絡請求,使得其能輕松應對大量連接。這要求開發人員對于多進程的運行模式有更清晰的認識更容易內存泄露。 一、SwooleSwoole號稱重新定義了PHP,它是一個PHP擴展,使得PHP可以使用異步的方式執行,就像node一樣,而且還能使用socket,為PHP提供了一系列異步IO、事件...

    時飛 評論0 收藏0
  • Laravel核心解讀--Console內核

    摘要:其中設置請求是唯一區別于內核的一個引導程序。和命令行腳本的規范一樣,如果執行命令任務程序成功會返回拋出異常退出則返回。嚴格遵循了面向對象程序設計的原則。 Console內核 上一篇文章我們介紹了Laravel的HTTP內核,詳細概述了網絡請求從進入應用到應用處理完請求返回HTTP響應整個生命周期中HTTP內核是如何調動Laravel各個核心組件來完成任務的。除了處理HTTP請求一個健壯...

    Barry_Ng 評論0 收藏0

發表評論

0條評論

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