2013-12-11 65 views
1

當我向http://google.com發出http請求時,首先將請求重定向到http://google.com/,然後再轉到http://www.google.com/。在使用http Pub包時,有沒有辦法讓我知道請求的歷史記錄,並獲取所有重定向的列表?如果http軟件包不支持此功能,是否有其他方式可以在Dart中獲取請求的歷史記錄?使用http包獲取請求歷史

回答

3

http軟件包不提供有關導致響應的重定向數量的信息。其中一個原因是,在瀏覽器中使用http是長期計劃。在瀏覽器中,它會從dart:html換行HttpRequest,它沒有重定向歷史記錄。

但是dart:io確實提供了有關HttpClientResponse對象中重定向的信息。以下代碼顯示重定向的數量。

import "dart:io" as io; 

main() { 
    var client = new io.HttpClient(); 
    client.getUrl(Uri.parse("http://www.google.com")) 
     .then((request) => request.close()) 
     .then((response) => print(response.redirects.length)); 
} 

查看HttpClientResponse.redirects瞭解更多信息。

+0

謝謝,這有幫助。 –