Google的urlfetch
與python lib urllib2
有什麼區別?使用Google AppEngine Urlfetch替代urllib2
當我遇到谷歌的urlfetch
我想也許有安全原因。也許谷歌是更安全的方面蘋果url或什麼的?
我有什麼理由選擇Google的urlfetch
超過urllib2
?
Google的urlfetch
與python lib urllib2
有什麼區別?使用Google AppEngine Urlfetch替代urllib2
當我遇到谷歌的urlfetch
我想也許有安全原因。也許谷歌是更安全的方面蘋果url或什麼的?
我有什麼理由選擇Google的urlfetch
超過urllib2
?
我不爲谷歌工作,所以這只是從我讀過的各種GAE職位的猜測。 App Engine實例不直接面對互聯網,而是埋在Google基礎設施的各個層面之後。當瀏覽器發出HTTP請求時,它不會直接進入您的實例,而是會碰到Google邊緣服務器,最終將請求路由到GAE實例。同樣,當發出一個HTTP請求時,你的實例不只是打開一個套接字(urllib2通常會這樣做),而是它將HTTP請求發送給其他一些Google邊緣服務器,它會發出HTTP請求。在GAE上使用urllib2將使用在urlfetch上運行的GAE特定版本。
在App Engine中使用標準庫沒有問題。 Url Fetch Api只是一種服務,可以比urlib2更「輕鬆」地發出HTTP請求。 Python對於新手來說更加不可理解,例如,您可以輕鬆使用非阻塞請求。
,我建議你在這兒讀一些補充信息:https://developers.google.com/appengine/docs/python/urlfetch/overview
如果谷歌發現了一些安全問題上的Python標準庫。我猜它會發送一個修正;)
區別在於:urlfetch只有一個功能接口,urllib和httplib有一個OO接口。一個OO接口可能非常有用。我在oauth2客戶端庫中看到了一個很好的例子,其中請求實例被傳遞給客戶端庫,以檢查該令牌是否有效並被授權。
請注意,在GAE urllib中,urllib2和httplib只是UrlFetch的包裝器(請參閱Fetching urls in Python)。
urlfetch模塊的一個區別是,它爲您提供了一個製作Asynchronous requests的界面。
這確實不是圖書館之間差異的重要部分。 –