일부 Google 서비스가 App Engine 서버의 요청을 차단하여 urlfetch DownloadError가 발생하는 것으로 나타났습니다. 예를 들어 feedproxy.google.com URL (예 : http://feedproxy.google.com/~r/blabbermouth/~3/cAk78LX4gJE/news.aspx)이 있습니다.일부 Google 서비스를 호출 할 때 urlfetch가 다운로드 오류를 발생시키는 이유는 무엇입니까?
내가 전에 시도한 모든 종류의 URL에 대해 사용한 적이없는 앱 ID를 포함하여 내가 시도한 모든 앱에서 발생합니다. 이 동작은 도 로컬 SDK에서이 발생하지 않습니다. 이것은 내가 이것이 요청을 할 때 어떤 GAE IP 주소를 사용하여 생긴 결과라고 믿게한다.
성공적으로 검색된 응답에서 status_code 오류 대신 DownloadError가 throw되는 것이 이상한 점입니다. urlfetch 나 httplib를 로컬로 사용하면 문제가 없습니다. 그래서 DownloadError는 아직 grok이 아니며 단지 버그 일 뿐이므로 티켓을 신청합니다.
누군가가 언급 한 (http://groups.google.com/group/google-appengine/msg/98b38f1f5cdb592c) 헤더를 추가 = { "인코딩 수락": "정체성"},하지만하셨습니까을 도움이되는 것 같지 않습니다. 어쩌면 당신은 간단한 서버를 설정하여 appspot과 로컬 머신이 보낸 요청 헤더의 차이를 알 수있을 것입니다. 아마도 accept-encoding 헤더 문제와 비슷한 문제가있을 수 있습니다. – Bemmu
아니, 헤더가 문제가되지 않습니다. 로컬 및 프로덕션에서 정확히 동일한 가져 오기 호출을 시도했지만 AFAIK의 유일한 차이점은 사용중인 IP 주소입니다. – jamtoday