Django-从View重定向到另一个域

讨价还价

我正在尝试从重定向mydomain.com到google.com。假设有以下情况,关于stackoverflow有几个答案:

return HttpResponseRedirect('google.com')

要么

return redirect('google.com')

但这不是。这只是将页面重定向到其自身并附加了该google.com部分,因此它像这样显示:

www.mydomain.com/google.com

当然会抛出404。.现在,我的视图如下所示:

class MyView(TemplateView):

    def get(self, request, *args, **kwargs):
        return HttpResponseRedirect('google.com')

谁能给我关于我做错事情的见解?

威廉·范昂塞姆

从某种意义上说,他们的回答是正确的:您进行重定向。但是现在Web浏览器需要执行重定向。

通常不与两个连续斜线前缀路径被假定为本地:因此,这意味着它停留在同一个域。

如果您想转到另一个域,则需要添加一个协议或至少两个连续的斜杠(以便重新使用协议):

return HttpResponseRedirect('https://google.com')  # use https

要么:

return HttpResponseRedirect('//google.com')  # "protocol relative" URL

毕竟,您只能将重定向答案返回到浏览器浏览器可以决定不遵循重定向(某些浏览器可以这样做),也可以按照他们喜欢的任何方式对其进行解释(尽管这意味着浏览器并没有真正做到我们可以预期的做)。我们不能强迫浏览器遵循重定向。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

重定向到另一个域的Django视图

Django 不会从一个视图/网址重定向到另一个

django:无法重定向到 django 中的另一个视图

Django Ajax表单提交错误地重定向到另一个页面

在Django Python中将视图重定向到另一个视图

重定向到从另一个视图查看 NoReverseMatch 错误 django

在Django中,如何使按钮单击重定向到另一个URL?

重定向到 Django 中的另一个页面

无法重定向到Django Python中的另一个URL

Django url 错误(重定向到另一个 url)

为什么Python / Django不断重定向到另一个URL?

Django 重定向到另一个应用程序中的不同视图

django-admin:保存对象后如何重定向到另一个URL?

django重定向到带有上下文的另一个视图

Django重定向到另一个页面不起作用

电子邮件验证后,django allauth 重定向到另一个页面

将用户值从一个模板重定向到另一个模板 - Django

如何在Django中从一个应用正确重定向到另一个应用

django 1.10一个带有链接的应用页面重定向到另一个应用页面

如何将记录器 django_structlog.middlewares.request 重定向到另一个文件?

重定向到另一个域的 HSTS

在 Django 中向 admin:auth_user_password_change 发送 POST 请求后如何重定向到另一个 URL?

Django:使用永久性= True设置URL后,停止将URL重定向到另一个页面

在Traefik中从一个域重定向到另一个域

Cloudflare从一个域重定向到另一个域?

symfony 从一个域重定向到另一个域

Apache动态将一个域重定向到另一个域

.htaccess 将一个域重定向到另一个域

域被重定向到同一液滴中的另一个域