laravel_session 解密的有效载荷无效
payload is invalid for laravel_session decrypt
我正在尝试解密 laravel_session 但出现以下错误:
An error has occurred: The payload is invalid.
简单地说,我正在使用 Rachet 并尝试调用授权用户,所以我使用以下方法在 httpRequest 中获取了 cookie:
public function onOpen(ConnectionInterface $conn) {
$this->clients[$conn->resourceId] = new Client();
$this->clients[$conn->resourceId]->conn = $conn;
$cookiesRaw = $conn->httpRequest->getHeader('Cookie');
$cookies = [];
if(count($cookiesRaw))
{
$cookies = \GuzzleHttp\Psr7\parse_header($cookiesRaw)[0]; // Array of cookies
}
// Get the laravel's one
$laravelCookie = $cookies[Config::get('session.cookie')];
$idSession = Crypt::decrypt($laravelCookie);
echo "\n cookie is ";
print_r($idSession);
}
Crypt::decrypt($laravelCookie);
导致错误,我尝试使用:
$cookie_contents = json_decode( base64_decode( $laravelCookie, true ));
$value = base64_decode( $cookie_contents->value );
$iv = base64_decode( $cookie_contents->iv );
$clear = unserialize( \openssl_decrypt($value, \Config::get( 'app.cipher' ), \Config::get( 'app.key' ), OPENSSL_RAW_DATA, $iv));
echo "Cookie contents (Session ID): $value\n";
但它也导致有效负载无效。
如何解密此 laravel_session 以获得用户会话 ID!
我想通过这个会话获取授权用户。
我在 stack-overflow 和 google 中搜索了很多,但所有情况都不符合我的情况。
Note: I'm using SESSION_DRIVER=file
Laravel 提供了一种获取会话 ID 的方法:
use Illuminate\Support\Facades\Session;
$sessionid = Session::getId();
我正在尝试解密 laravel_session 但出现以下错误:
An error has occurred: The payload is invalid.
简单地说,我正在使用 Rachet 并尝试调用授权用户,所以我使用以下方法在 httpRequest 中获取了 cookie:
public function onOpen(ConnectionInterface $conn) {
$this->clients[$conn->resourceId] = new Client();
$this->clients[$conn->resourceId]->conn = $conn;
$cookiesRaw = $conn->httpRequest->getHeader('Cookie');
$cookies = [];
if(count($cookiesRaw))
{
$cookies = \GuzzleHttp\Psr7\parse_header($cookiesRaw)[0]; // Array of cookies
}
// Get the laravel's one
$laravelCookie = $cookies[Config::get('session.cookie')];
$idSession = Crypt::decrypt($laravelCookie);
echo "\n cookie is ";
print_r($idSession);
}
Crypt::decrypt($laravelCookie);
导致错误,我尝试使用:
$cookie_contents = json_decode( base64_decode( $laravelCookie, true ));
$value = base64_decode( $cookie_contents->value );
$iv = base64_decode( $cookie_contents->iv );
$clear = unserialize( \openssl_decrypt($value, \Config::get( 'app.cipher' ), \Config::get( 'app.key' ), OPENSSL_RAW_DATA, $iv));
echo "Cookie contents (Session ID): $value\n";
但它也导致有效负载无效。
如何解密此 laravel_session 以获得用户会话 ID!
我想通过这个会话获取授权用户。
我在 stack-overflow 和 google 中搜索了很多,但所有情况都不符合我的情况。
Note: I'm using SESSION_DRIVER=file
Laravel 提供了一种获取会话 ID 的方法:
use Illuminate\Support\Facades\Session;
$sessionid = Session::getId();