【发布时间】:2021-01-29 19:21:38
【问题描述】:
请求对象的build_absolute_uri函数会生成一个http协议的url,虽然https协议的url很明显。是否有可能以某种方式强制生成安全协议?
【问题讨论】:
请求对象的build_absolute_uri函数会生成一个http协议的url,虽然https协议的url很明显。是否有可能以某种方式强制生成安全协议?
【问题讨论】:
这听起来很奇怪。 docs 表示 HttpRequest.build_absolute_uri() 方法总是使用当前请求的协议:
不鼓励在同一个站点上混合使用 HTTP 和 HTTPS,因此
build_absolute_uri()将始终生成一个与当前请求具有相同方案的绝对 URI [...]
您确定在当前请求中使用的是https?
【讨论】:
class RedirectToOriginalView(RedirectView): def get_redirect_url(self, *args, **kwargs): absolute_url = self.request.build_absolute_uri() url = Url.objects.filter(shortcut=absolute_url).first() return url.original