Solución:
- Capturar la identificación de la sesión
Session::getId()
en el dominio A - envíe la identificación de sesión capturada a través de HTTP POST al dominio B
- Acceda a la identificación de sesión enviada en el dominio B
$sessionid_from_domainA = $_POST['session_from_A']
- Establecer sesión en el dominio B
Session::setId($sessionid_from_domainA)
- Iniciar sesión en el dominio B
Session::start()
-
En el dominio A crea una imagen como esta
<img src="https://DOMAINB.com/setcookie?id={{ Session::getId() }}" style="display:none;" />
-
En el dominio B, cree una ruta así:
.
Route::get('setcookie', function(){
Session::setId($_GET['id']);
Session::start();
return 'Cookie created';
});`
- Listo, ahora debería poder obtener su usuario por
$user = Auth::User;
Si desea compartir la sesión entre varios subdominios, en ese caso, debe establecer el nombre de dominio config / session.php ha establecido el nombre de dominio.
Ejemplo: si tiene new.example.com y test.example.com, entonces debe establecer el nombre de dominio como example.com
'domain' => env('SESSION_DOMAIN_URL','.example.com')
Las soluciones allí funcionaron para mí, específicamente configurar el dominio y luego borrar las cookies y el caché de mi navegador.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)