2017-10-04 60 views
1

我很努力地找出是否有方法要求Guzzle通過重定向查詢。所以,如果我說Gu 6 6 - 如何通過查詢重定向

  $res = $client->request("GET", "https://google.com", [ 

        'allow_redirects' => true, 
        'timeout' => 2000, 
        'query' => ['foo'=>'bar'], 
      ]); 

並讓說,(對於一些奇怪的原因),谷歌重定向到https://somewhere-else.com,我想我的foobar的查詢到該網址也

https://somewhere-else.com?foo=bar 

傳遞會喜歡一些幫助。

感謝

+0

不會很容易,你問的是真正的非標準行爲。 – Calimero

+0

你是這麼認爲的嗎?大多數重定向是將用戶從現在過時的地址帶到頁面的新位置,因此在大多數情況下,新位置不需要查詢字符串? – Ben

+0

當然,但是服務器的工作是爲你提供一個精確的重定向URI。它應該根據需要代表您傳播查詢參數。 – Calimero

回答

0

有一個在狂飲沒有標準的機制來做到這一點,因爲(@Calimero已經說過)的HTTP規範不承擔此行爲。

但是,您可以複製並修改the RedirectMiddleware,即Guzzle用於處理allow_redirects選項。