Python GAE的乐趣:urlfetch rpc超时
我正在尝试向blob商店写入一个图像。我已经尝试了Python GAE的乐趣:urlfetch rpc超时,python,google-app-engine,Python,Google App Engine,我正在尝试向blob商店写入一个图像。我已经尝试了fetch\u response=urlfetch.fetch(image\u url,deadline=10),但超时了,现在我正在尝试rpc,结果相同。有人能告诉我下面的代码有什么问题吗?感谢您的帮助: media_items = ['logo.png'] content_type = 'image/png' for media_item in media_items: image_url = 'htt
fetch\u response=urlfetch.fetch(image\u url,deadline=10)
,但超时了,现在我正在尝试rpc,结果相同。有人能告诉我下面的代码有什么问题吗?感谢您的帮助:
media_items = ['logo.png']
content_type = 'image/png'
for media_item in media_items:
image_url = 'http://localhost:8080/image/' + media_item
#fetch_response = urlfetch.fetch(image_url, deadline=10)
rpc = urlfetch.create_rpc(deadline=20)
urlfetch.make_fetch_call(rpc, image_url)
try:
file_data = rpc.get_result()
file_name = files.blobstore.create(mime_type=content_type)
with files.open(file_name, 'a') as f:
f.write(file_data)
files.finalize(file_name)
blob_key = files.blobstore.get_blob_key(file_name)
create_media_item(blob_key)
except urlfetch.DownloadError:
logging.error('DownloadError')
这是在我的机器上运行的,如果我在浏览器中使用此URL查看图片,它会显示出来。My logging.error()已打印。因为开发服务器似乎是单线程的,如果要向其发送请求,您必须运行2个Instance:
开发服务器似乎是单线程的,如果要向其发送请求,您必须运行2个Instance:
如果您从自己的应用程序中获取blob,您可能应该使用或从文件系统中加载该文件。如果您从自己的应用程序中获取blob,您可能应该使用或从文件系统中加载该文件。使用
日志记录.exception
而不是日志记录.error
,您的日志信息将包括stacktrace和异常信息。谢谢Nick!那很有用!使用logging.exception
而不是logging.error
,您的日志消息将包含堆栈跟踪和异常信息。谢谢!那很有用!