Codeigniter mit Google oauth2 fügt hashtag php zur Weiterleitung hinzu ('usercp')

8

Ich möchte auf einen anderen Controller umleiten können, aber wenn sich der Benutzer mit google anmeldet und der Erfolg voll ist, wird er auf den Usercp umgeleitet, aber aus irgendeinem Grund bekommt er die # von hier aus

%Vor%

Und wenn Redirects mit coderigniter redirect () umgeleitet werden, fügt es # hinzu.

%Vor%
  

Frage Wenn Sie nach erfolgreicher Anmeldung auf die neue Seite umgeleitet werden, können Sie verhindern, dass # hinzugefügt wird.

Ich benutze Ссылка

Ich benutze auch vhost mit xammmp

Controller-Funktion

%Vor%

config / googleplus.php Einstellungen

%Vor%

Ich verwende HMVC mit Codeigniter

Anwendung / Module / Konto / Controller / Login.php

Voller Controller

%Vor%     
Mr. ED 25.05.2017, 05:42
quelle

3 Antworten

2

Die redirect () - Funktion von codeigniter verwendet die Funktion php header () auf zwei Arten:

%Vor%

Mit dem Refresh-Parameter wird kein Hashtag hinzugefügt. Mehr dazu finden Sie in system / helpers / url_helper.php

Sie können dies zu Ihrem Vorteil in google_login.php ändern

verwenden %Vor%

entsprechend zu

%Vor%     
Vickel 28.05.2017 16:09
quelle
2

Wenn Sie die Weiterleitung aufrufen, sollten Sie in der Lage sein, den Hash zu löschen, indem Sie refresh param:

verwenden %Vor%

Sie können die URL ändern, indem Sie etwas wie

tun %Vor%

Aber sonst, da es ein Client-Side-Zeug ist, gibt es nicht viele Optionen. Sie können es auch aus JavaScript entfernen, wenn der Client die Seite mit

lädt %Vor%     
Aperçu 27.05.2017 14:25
quelle
1

da dies im Kommentarbereich zu lang ist, geht hier:

Versuchen Sie, die Debug-Modus / Entwickler-Tools Ihres Browsers zu verwenden, und sehen Sie den Netzwerk-Teil davon. Dort können Sie die Reihenfolge der Anfragen sehen, wenn Ihre Seite geladen wird.

Wenn du chrome verwendest, solltest du die Option preserve log vor dem oauth dick machen.

Mach das OAUTH und versuche dann, die Anfrage zu google zu finden, die zu deiner Seite weiterleitet.

klicken Sie auf die Anfrage, Sie erhalten die Details der Anfrage.

sehen Sie für den Antwort-Header, sollte es 302 Status sein und das Ziel sollte Ihre http://www.example.com/usercp URL sein.

Wenn Sie die # nicht sehen konnten, haben Sie Probleme in Ihrem Teil, versuchen Sie Ihre .htaccess Datei zu überprüfen.

Wenn es dort im Ziel ist, dann liegt das Problem in Google-Teil, und nicht viel kann man dagegen tun

    
am05mhz 03.06.2017 04:08
quelle