Flask 使用烧瓶显示从S3读取的受保护图像?
我有一个flask应用程序,它生成一个预先签名的url,以便向用户显示私有图像。但是由于某些原因,图像没有显示,只是显示了它的替代文本(尽管我知道客户端已连接,并且正在为正确的图像生成URL) 这是我的烧瓶代码:Flask 使用烧瓶显示从S3读取的受保护图像?,flask,jinja2,boto3,Flask,Jinja2,Boto3,我有一个flask应用程序,它生成一个预先签名的url,以便向用户显示私有图像。但是由于某些原因,图像没有显示,只是显示了它的替代文本(尽管我知道客户端已连接,并且正在为正确的图像生成URL) 这是我的烧瓶代码: @app.route("/get_image", methods=['GET','POST']) name_cursor = db.query ##finds the name of the users image s3 = boto3.client('s3', aws
@app.route("/get_image", methods=['GET','POST'])
name_cursor = db.query ##finds the name of the users image
s3 = boto3.client('s3', aws_access_key_id=os.environ['AWS_ACCESS_KEY_ID'], aws_secret_access_key=os.environ['AWS_SECRET_ACCESS_KEY'], region_name='us-east-1')
url = s3.generate_presigned_url(ClientMethod='get_object',
Params={
'Bucket': os.environ['S3_BUCKET'],
'Key': name_cursor['img'],
},
ExpiresIn=3600)
render_template("test.html",url=url)
然后在模板内部:
<div class="avatar">
<img src="{{ url }}" alt="Thumbnail Image">
</div>
您是否了解导致这种情况的原因?您是否通过更改区域名称进行了检查?是的,但没有解决问题。bucket位于该区域。您是否通过更改区域名称进行了检查?是的,但它没有修复它。铲斗位于该区域。