Facebook SDK returned an error: Cross-site request forgery validation failed. The “state” param from the URL and session do not match

后端 未结 25 1031
南方客
南方客 2020-12-01 01:37

i\'m trying to get Facebook user id using the php sdk like this

$fb = new Facebook\\Facebook([
    \'app_id\' => \'11111111111\',
    \'app_secret\' =>         


        
25条回答
  •  旧巷少年郎
    2020-12-01 02:22

    For me setting the session state worked

    Complete code ( in the redirect url php )

    $accessToken = '';
    
    $helper = $fb->getRedirectLoginHelper();
    
    if(isset($_GET['state'])){
    
        $_SESSION['FBRLH_state']=$_GET['state'];
    }
    
    
    try {
        $accessToken = $helper->getAccessToken();
    } catch ( Facebook\Exceptions\FacebookResponseException $e ) {
        // When Graph returns an error
        echo 'Graph returned an error: ' . $e->getMessage();
    
    }
    

提交回复
热议问题