Django的1.4 - 重定向到非HTTP网址(Django 1.4 - Redirect to

2019-08-08 12:28发布

我们有重定向到一个非HTTP URL方案的视图。 它的iOS应用中的使用。 但由于我们已经升级到Django1.4执行重定向代码,当我们正在崩溃。 它与崩溃

SuspeciousOperation在/ myyrlscheme /

不安全重定向与方案appdev网址:

以下是代码:

if acode and acode.has_key('access_token'):
    if DOMAIN == 'dev.mywebsite.com':
        return HttpResponseRedirect('appdev://fbconnect?token=%s'%(acode['access_token']))
    else:
        return HttpResponseRedirect('app://fbconnect?token=%s'%(acode['access_token']))

我可以理解为什么这种崩溃是HttpResponseRedirect需要一个HTTP(s) URL方案。 我该如何告诉Django,这是一个安全的URL和盲目重定向?

Answer 1:

我相信,你需要有一个自定义Response对象,可以考虑以下几点:

response = HttpResponse("", status=302)
response['Location'] = "appdev://..."
return response


文章来源: Django 1.4 - Redirect to Non-HTTP urls