首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用协议https返回location url?

如何使用协议https返回location url?
EN

Stack Overflow用户
提问于 2020-02-18 06:23:11
回答 1查看 101关注 0票数 0

我有一个安全的webapp,它有一个基于烧瓶的网络和芹菜容器,可以通过https进行通信。

Web容器从客户端接收带有https协议的POST fetch,启动后台任务,并返回包含任务状态url的响应:

代码语言:javascript
复制
jsonify({}), 202, {'Location': url_for('create_zip_file_taskstatus', task_id=task.id)}

客户端等待响应,然后获取任务状态的url:

代码语言:javascript
复制
let create_zipfile_status_url = response.headers.get('location');

没有协议的位置本身的相对url是很好的:

代码语言:javascript
复制
url_for('create_zip_file_taskstatus', task_id=task.id): /status/c4bc9e2c-6ecd-4bf3-bc25-782f8e4e66c6

但是完整的url有一个http协议,它会导致CORS错误。

代码语言:javascript
复制
create_zipfile_status_url: http://localhost/status/7aba0d27-712d-4623-a37e-5262b53fe212

如何将location url设置为协议https (而不是http)?

EN

回答 1

Stack Overflow用户

发布于 2020-02-18 06:35:19

我找到了解决方案here。需要添加_external=True, _scheme='https',即从

代码语言:javascript
复制
return jsonify({}), 202, {'Location': url_for('create_zip_file_taskstatus', task_id=task.id)}

代码语言:javascript
复制
return jsonify({}), 202, {'Location': url_for('create_zip_file_taskstatus', task_id=task.id, _external=True, _scheme='https')}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60274929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档