Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Vkontakte每次登录授权提示_Php_Vk - Fatal编程技术网

Php Vkontakte每次登录授权提示

Php Vkontakte每次登录授权提示,php,vk,Php,Vk,我正在使用vkontakte php sdk 这是我的“使用vkontakte登录”代码 )) 问题:即使已经授权的用户也会收到授权对话框。只需在对话框uri中添加“&revoke=0”。这样,用户可以立即转发,以防他们之前授权了您的应用程序。我不熟悉vk sdk,但似乎$oauth2Proxy->authorize()每次都在尝试授权,而不仅仅是检查授权状态,调用它不是正确的函数吗?根据documnetation$oauth2Proxy->authorize(),这是对authorize的调用

我正在使用vkontakte php sdk

这是我的“使用vkontakte登录”代码

))


问题:即使已经授权的用户也会收到授权对话框。

只需在对话框uri中添加“&revoke=0”。这样,用户可以立即转发,以防他们之前授权了您的应用程序。

我不熟悉vk sdk,但似乎
$oauth2Proxy->authorize()
每次都在尝试授权,而不仅仅是检查授权状态,调用它不是正确的函数吗?根据documnetation$oauth2Proxy->authorize(),这是对authorize的调用,但我不确定如何检查用户是否已被授权
$oauth2Proxy = new Oauth2Proxy(
$vkclient, // client id
$vksecret, // client secret
'https://oauth.vk.com/access_token', // access token url
'https://oauth.vk.com/authorize', // dialog uri
'code', // response type
'http://localhost/PHP%20workspace/Sputnik/vk_connect.php', // redirect url
    'offline,notify','email' // scope
// Try to authorize client
if($oauth2Proxy->authorize() === true)
{
    // Init vk.com SDK
    $vkPhpSdk = new VkPhpSdk();
    $vkPhpSdk->setAccessToken($oauth2Proxy->getAccessToken());
    $vkPhpSdk->setUserId($oauth2Proxy->getUserId());

    // API call - get profile
    $result = $vkPhpSdk->api('getProfiles', array(
            'uids' => $vkPhpSdk->getUserId(),
            'fields' => 'uid, first_name, last_name, nickname, screen_name, photo_big',
    ));
}