Как перенаправить пользователей на мобильное приложение в представлении Django?
У меня есть веб-приложение Django, и я пытаюсь перенаправить пользователей на мое мобильное приложение в одном из представлений.
def magic_link(request, token):
return redirect(f"{settings.FRONTEND_URL}/magic_link/{token}")
Эта перенаправляющая ссылка похожа на: appname://magic_link/token. Однако я получаю следующую ошибку.
DisallowedRedirect at /magic_link/{token}/
Unsafe redirect to URL with protocol 'appname'
Как я могу исправить эту проблему и перенаправить пользователей на мобильное приложение в представлении Django?
Вам следует создать свой собственный HttpResponsePermanentRedirect, который наследуется от HttpResponsePermanentRedirect от django. В собственном классе вы добавляете схему вашего приложения в allow_schemes (что-то соответствующее, я не очень хорошо помню) чтобы дать django знать, что ваша схема приложения действительна.
Пример:
class HttpResponsePermanentRedirect(HttpResponsePermanentRedirect by django):
allow_schemes=['your_app_scheme',...]