我想执行以下操作(来自 GAE 留言簿示例)以动态服务器来自 Blob 属性的图像 bottle.py
class Image(webapp2.RequestHandler):
def get(self):
greeting = db.get(self.request.get('img_id'))
if greeting.avatar:
self.response.headers['Content-Type'] = 'image/png'
self.response.out.write(greeting.avatar)
else:
self.error(404)
似乎没有回应,所以这就是我到目前为止所拥有的:
@get('/image')
def get_image():
greeting = db.get(request.query.img_id)
if greeting.avatar:
response.headers['Content-Type'] = 'image/png'
response.body = greeting.avatar
return response
else:
abort('404', not found!)
但这并没有正确返回图像。
编辑:我返回的是请求,而不是响应,所以上面的例子有效!
您可以使用 HTTPReponse 对象来实现此目的:
@get('/image')
def get_image():
greeting = db.get(request.query.img_id)
if greeting.avatar:
headers = {
'Content-Type': 'image/png'
}
body = greeting.avatar
return HTTPResponse(body, **headers)
else:
abort('404', not found!)