Yoast\WP\SEO\AI_Authorization\User_Interface
Abstract_Callback_Route::callback
Runs the callback to store connection credentials and the tokens locally.
Метод класса: Abstract_Callback_Route{}
Хуков нет.
Возвращает
WP_REST_Response. The response of the callback action.
Использование
$Abstract_Callback_Route = new Abstract_Callback_Route(); $Abstract_Callback_Route->callback( $request ): WP_REST_Response;
- $request(WP_REST_Request) (обязательный)
- The request object.
Код Abstract_Callback_Route::callback() Abstract Callback Route::callback Yoast 27.8
public function callback( WP_REST_Request $request ): WP_REST_Response {
$user_id = $request->get_param( 'user_id' );
try {
$code_verifier = $this->code_verifier_repository->get_code_verifier( $user_id );
if ( $request->get_param( 'code_challenge' ) !== \hash( 'sha256', $code_verifier->get_code() ) ) {
throw new Unauthorized_Exception( 'Unauthorized' );
}
$this->access_token_repository->store_token( $user_id, $request->get_param( 'access_jwt' ) );
$this->refresh_token_repository->store_token( $user_id, $request->get_param( 'refresh_jwt' ) );
$this->code_verifier_repository->delete_code_verifier( $user_id );
} catch ( Unauthorized_Exception | RuntimeException $e ) {
return new WP_REST_Response( 'Unauthorized.', 401 );
}
return new WP_REST_Response(
[
'message' => 'Tokens successfully stored.',
'code_verifier' => $code_verifier->get_code(),
],
);
}