Zttp 是 Adam Wathan 為了讓程式碼更富表現力以及簡化常見用例而寫的一個 Guzzle 的封裝。在PHP 的專案中,如果你需要透過程式碼來發起HTTP 請求,相信很多人對GuzzleHttp 這個Package 很熟悉,然而其實在使用Guzzle 的時候,我們依然可以做得更簡便一點的,本文我們就和大家分享Zttp簡化Guzzle呼叫實例,希望能幫助大家。
這是使用Zttp 去Post 一個自訂頭部內容請求的一個例子:
$response = Zttp::withHeaders(['Fancy' => 'Pants'])->post($url, [ 'foo' => 'bar', 'baz' => 'qux', ]); $response->json();
如果用一個與Guzzle 差不多的東西寫這個請求的話,大概這樣寫:
$client = new Client(); $response = $client->request('POST', $url, [ 'headers' => [ 'Fancy' => 'Pants', ], 'form_params' => [ 'foo' => 'bar', 'baz' => 'qux', ] ]); json_decode($response->getBody());
相較之下,Zttp 簡化了程式碼的寫法,還能很簡單地回傳JSON 格式的內容。
以下是使用Zttp 的幾個範例:
帶參數的Post 請求
$response = Zttp::asFormParams()->post($url, [ 'foo' => 'bar', 'baz' => 'qux', ]);
Patch 請求
$response = Zttp::patch($this->url('/patch'), [ 'foo' => 'bar', 'baz' => 'qux', ]);
Put 請求
$response = Zttp::put($this->url('/put'), [ 'foo' => 'bar', 'baz' => 'qux', ]);
Delete 請求
$response = Zttp::delete($this->url('/delete'), [ 'foo' => 'bar', 'baz' => 'qux', ]);
新增請求頭
$response = Zttp::accept('banana/sandwich')->post($url);
防止重定向
#$response = Zttp::withoutRedirecting()->get( $url);
相關推薦:
以上是Zttp簡化Guzzle呼叫實例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!