【问题标题】:How can i redirect when person type in url browser?当人们在 url 浏览器中键入时,我如何重定向?
【发布时间】:2020-05-10 17:28:39
【问题描述】:

我有两种方法,(注册和确认方法),提交注册时,在手机中发送消息进行验证,然后人员类型和代码正确,我返回此代码并传递给jquery的响应

  return JsonResponse({'code':1,'url': '/user/confirm'})

在带有 window.location() 的 jquery 代码中,它将重定向到确认页面, 但我想当人们输入这个网址并输入时,他无法打开这个页面(确认页面)并重定向到其他页面。

【问题讨论】:

    标签: django


    【解决方案1】:

    您可以查看浏览器发送的 Accept 标头,仅在请求时发送 JSON,否则发送 redirect response

    您可能还需要将 Accept 标头添加到您的 jQuery 调用中。

    def that_view(request):
        # ... do things ...
        if 'json' in request.META.get('HTTP_ACCEPT', ''):
            return JsonResponse(...)
        return redirect(...)
    

    【讨论】:

    • 嗨,但是当我添加标题时 {Accept: "text/plain; charset=utf-8",} 我在确认页面中看不到,我想在确认方法中使用,但是 ajax 在注册方法
    • 你显然想添加Accept: "application/json"
    • 我有问题,ajax 不发送标题到下一页(从注册到确认页面)
    • 我想在确认页面中访问这个标题,但我在注册页面中有这个标题,因为 ajax 中的 url 用于注册页面,
    猜你喜欢
    • 2014-07-15
    • 2016-07-23
    • 1970-01-01
    • 2012-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-20
    相关资源
    最近更新 更多