Php VK API:不正确的签名:sid&;秘密授权

Php VK API:不正确的签名:sid&;秘密授权,php,api,vk,Php,Api,Vk,我正在尝试启动一个vk.com选项卡应用程序,我正在使用php api sdk,出于某种原因,当我尝试获取用户配置文件信息时,我得到以下信息: Incorrect signature: sid & secret authorization 代码如下所示: try { $vkontakte = new VKontakte(array('testMode' => true, 'fileUpload' => false)); $vkontakte->setApiId(

我正在尝试启动一个vk.com选项卡应用程序,我正在使用php api sdk,出于某种原因,当我尝试获取用户配置文件信息时,我得到以下信息:

Incorrect signature: sid & secret authorization
代码如下所示:

try {

$vkontakte = new VKontakte(array('testMode'   => true, 'fileUpload' => false));
$vkontakte->setApiId(XXXXXXX);
$vkontakte->setSecret('XXXXXXXXXX');

$viewerId = $vkontakte->getViewerId();

$profiles = $vkontakte->getProfiles(array(
    'uids'   => $viewerId,
    'fields' => 'nickname,sex,bdate,photo,photo_big,mobile_phone,has_mobile,home_phone,rate'
));
} catch (Exception $e) {
echo '<pre>';
echo $e->getMessage();
echo '</pre>';
}
试试看{
$vkontakte=newvkontakte(数组('testMode'=>true,'fileUpload'=>false));
$vkontakte->setapid(XXXXXXX);
$vkontakte->setSecret('xxxxxxxxx');
$viewerId=$vkontakte->getViewerId();
$profiles=$vkontakte->getProfiles(数组(
“uids”=>$viewerId,
“字段”=>“昵称、性别、b日期、照片、照片大小、手机、手机、家庭电话、费率”
));
}捕获(例外$e){
回声';
echo$e->getMessage();
回声';
}

你知道这里可能出了什么问题吗?或者应该怎么做?

我认为您使用的是较旧的api,尝试使用oauth api,请参阅文档:

您可以使用所有方法,不同的方法仅用于获取访问令牌

获取访问令牌:

对于iframe应用程序,您可以在GET参数中获取access_令牌,例如:

APP\u URL/?…&api\u settings=8194&viewer\u id=XXXX&viewer\u type=2&sid=YOURSID&secret=ffffffffffff&access\u TOCKEN&group\u id=0&is\u APP\u user=1&auth\u key=6dfa5e5f8179066e6a7d0128138ed4&language=0&ad\u info=zz=&is\u-secure=0&ads\u-APP\u-id=1111

虽然这些链接可以回答问题,但最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,则仅链接的答案可能无效。有关更多详细信息,请参阅这似乎仅适用于独立应用程序,而不适用于iframe应用程序。答案已编辑,您可以使用所有方法,我使用:)