当前位置: 首页 > 面试题库 >

Flask url_用于生成HTTP URL而不是https

卫财
2023-03-14
问题内容

url_for用户注销后,我用来生成重定向URL:

return redirect(url_for('.index', _external=True))

但是,当我将页面更改为 https 连接时,url_for仍然给我 http

我想明确地要求在网址开头url_for添加 https

您能指出我该如何更改吗?我看了看Flask文档,没有运气。


问题答案:

使用Flask
0.10,将提供比包装更好的解决方案url_for。如果您查看https://github.com/mitsuhiko/flask/commit/b5069d07a24a3c3a54fb056aa6f4076a0e7088c7,则会_scheme添加一个参数。这意味着您可以执行以下操作:

url_for('secure_thingy',
        _external=True,
        _scheme='https',
        viewarg1=1, ...)

_scheme设置URL方案,生成https://..而不是的URL
http://。但是,默认情况下,Flask仅生成路径(不包含主机或方案),因此您需要包括_external=True/secure_thingy到的路径https://example.com/secure_thingy

但是,请考虑使您的网站仅使用HTTPS。
似乎您只想对部分“安全”路由部分实施HTTPS,但如果未加密链接到安全页面的页面,则无法确保不更改https-
URL。这类似于混合内容。



 类似资料:
  • 问题内容: 用户注销后,我用于生成重定向URL: 但是,当我将页面更改为https连接时,仍然给我http。 我想明确地要求在网址开头添加https。 你能指出我该如何更改吗?我看了看Flask文档,没有运气。 问题答案: 使用Flask 0.10,将提供比包装更好的解决方案url_for。如果你查看https://github.com/mitsuhiko/flask/commit/b5069d0

  • 我正在使用插件从文件生成源代码。问题是生成的是而不是。我添加了文件,该文件如下所示: 这应防止生成。但它不起作用我仍然生成了而不是。 我的插件如下所示: 版本为。有人知道问题出在哪里吗? XSD非常庞大。这是生成的元素 生成的源是:

  • Google App engine总是为url/test.js生成200,test.js不是静态资源,而是动态生成内容的url模式。内容将在N小时后过期,并生成一个新鲜内容。 我已经尝试了最后修改,ETag和cache-control。似乎都不起作用。

  • 我的控制器正在响应: “{\”firstname\“:\”firstname required\“,\”lastname\“:\”lastname required\“,\”password\“:\”password required\“,\”matchingpassword\“:\”matchingpassword required\“,\”email\“:\”email required\“}

  • API 2:GET:/school/student/all

  • 我使用的是spring-boot:1.3.3、spring-hateoas:0.19.0和spring-data-rest-core:2.4.4。 这是Spring-Hateoas提供的内容的例子。过了一段时间,我将我的应用程序切换到SSL。