Ich habe ein Problem mit meiner Weiterleitungs-URL, aber nur, wenn ich nicht bereits mit deezer verbunden bin.Wenn nicht bei Deezer angemeldet ist, wird meine Anwendung auf falsche URL umgeleitet
Wenn ich verbunden bin, funktioniert mein OAuth-Flow perfekt, und ich werde an die richtige URL weitergeleitet: 'http://10.0.0.68:3000/callback/'.
Aber wenn ich keine Deezer-Sitzung habe und ich auf die Deezer-Login-Seite umgeleitet werde, funktioniert das nicht. Immer wenn ich mich bei Deezer einlogge, entweder mit Facebook oder nicht, werde ich an die folgende Adresse weitergeleitet: 'http://10.0.0.68:3000/callback/https://connect.deezer.com/oauth/auth.php?perms=basic_access%2Cemail%2Coffline_access&format=window&app_id=175451&redirect_uri=http%3A%2F%2F10.0.0.68%3A3000%2Fcallback%2F#='.
Ich habe keine Ahnung, wie dies ein Problem mit meiner app sein könnte, da es außerhalb meiner Reichweite passiert, aber hier ist mein Code:
settings.py
DEEZER_REDIRECT_URI = reverse_lazy('front:callback')
DEEZER_API_URL = 'https://api.deezer.com/'
DEEZER_CONNECT_URL = 'https://connect.deezer.com/'
DEEZER_APP_ID = "xxxxxx"
DEEZER_SECRET_KEY = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
views.py
class LoginView(View):
"""Logs user with Deezer"""
def get(self, request):
url = settings.DEEZER_CONNECT_URL + 'oauth/auth.php?' + \
urlencode({
'app_id': settings.DEEZER_APP_ID,
'perms': 'basic_access,email,offline_access',
'redirect_uri': settings.BASE_URL + str(settings.DEEZER_REDIRECT_URI)[1:]
})
redirect = HttpResponseRedirect(url)
return redirect
urls.py
app_name = 'front'
urlpatterns = [
url(r'^$', views.IndexView.as_view(), name='index'),
url(r'^login/$', views.LoginView.as_view(), name='login'),
url(r'^callback/$', views.CallbackView.as_view(), name='callback'),
]
Hoffe jemand kann mir helfen.
Vielen Dank! Ich werde etwas auf ihre Mitarbeiter warten, bevor ich deine Antwort akzeptiere. Übrigens, coole App! –
Danke :) Hast du mein Update auf dem Fall gesehen? Scheint, dass Deezer das Problem auf ihrer Seite bereits gelöst hat, also sollte auch Ihr Workflow jetzt funktionieren. –
Ja, ich habe es gesehen, danke! –