ローカル マシンで適切に動作する Google AppEngine アプリケーションがあります。アプリは、(URL から) 画像を Facebook ウォールに投稿します。ただし、Google のサーバーにデプロイすると、エラーが発生します。
DeadlineExceededError: Deadline exceeded while waiting for HTTP response from URL:
問題のあるコードは次のとおりです。
facebook_access_token = facebook_info['access_token']
facebook_post_url = 'https://graph.facebook.com/me/photos?access_token=%s&url=%s&name=%s&method=post' % (facebook_access_token, url, caption)
facebook_post_url = facebook_post_url.replace(" ", "+");
facebook_result = urlfetch.fetch(facebook_post_url)
if facebook_result.status_code == 200:
facebook_result_object = json.loads(facebook_result.content)
output_ids['facebook'] = facebook_result_object['id']
else:
output_ids['facebook'] = ''
Ans 完全なエラー トレースは次のとおりです。
Traceback (most recent call last):
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/_webapp25.py", line 710, in __call__
handler.get(*groups)
File "/base/data/home/apps/s~digibackapi/1.362663258877230387/main.py", line 512, in get
facebook_result = urlfetch.fetch(facebook_post_url)
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/urlfetch.py", line 266, in fetch
return rpc.get_result()
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/apiproxy_stub_map.py", line 604, in get_result
return self.__get_result_hook(self)
File "/base/python_runtime/python_lib/versions/1/google/appengine/api/urlfetch.py", line 404, in _get_fetch_result
'Deadline exceeded while waiting for HTTP response from URL: ' + url)
DeadlineExceededError: Deadline exceeded while waiting for HTTP response from URL: https://graph.facebook.com/me/photos?access_token=<ACCESS_TOKEN>&url=http://digiback.cc/ej7&name=Trees&method=post
繰り返しますが、コードはしっかりしているように見え、ローカル マシンで問題なく動作します。タイムアウトと関係があるのでしょうか? ブラウザで試してみると、facebook_post_url
すぐに戻ります。
誰にもアイデアはありますか?私はここで完全な損失を被っています。
どうもありがとう!