close

描述 HTTP server request handlers  和   HTTP server middleware components (“middleware”)  使用HTTP messages describe at PSR-7

HTTP request handlers 是網頁重要元素之一,伺服器端接收request message 處理他,產生response message,Http middleware建立於Application layer,將request 和response 隔開出來

Note: All references to “request handlers” and “middleware” are specific to server request processing.

接下來講解的都是概要的部分

1. Specification

1.1 Request Handlers

request handler是一個獨立元件,處理request並且產生response,request handler 可能會丟出錯誤,假設request的狀態,不允許他產生response。 目前這種type的錯誤還沒被定義

Request handler必須時做

  • Psr\Http\Server\RequestHandlerInterface

​​​​​​​

1.2 Middleware

  一個middleware也是一個獨立的原件,通常會與其他middleware鬼混再一起,一起處理incoming request 和創造一個response,有點像是chain of responsibility

middleware可能會創造並且回傳response,而省略掉request handler,假設已經抵達某些條件,例如middleware auth,會提前驗證帳號密碼,不符合條件直接打回

middleware必須implements

  • Psr\Http\Server\MiddlewareInterface

 

1.3 Generating Responses

  推薦response是依照 PSR-7 ResponseInterface 的樣式來構造,會者是 factory capable of generating a ResponseInterface instance  ​​​​​​​以便免創造出,依賴於特定HTTP message implementation的 response

1.4 Handling Exceptions

 ​​​​​​建議任何使用middleware的應用程式包含一個可以捕捉和辨識exception的並把他們轉換為response。 所以middle ware應該成為第一個component這樣,如果有任何錯誤都可以捕捉到並且回傳response

2. Interfaces

 ​​​​​​​參考下方連結

https://www.php-fig.org/psr/psr-15/

 

arrow
arrow
    全站熱搜

    蕭瑞文 發表在 痞客邦 留言(0) 人氣()