我想通过PHP在vk.com的墙上贴一些照片,文字等。 几天以来,我试图了解VK的官方指南(https://vk.com/dev/PHP_SDK)和在GitHub(https://github.com/fdcore/vk.api)中找到的一些技巧。
代码很少,但是我很难到达第二或第三行。
我立即收到php错误,JSON错误等,等等。我什至无法让自己给出第一个Access_token,Autorization_code等。 我承认我对OAuth和API不太了解,但是在这里我什至无法开始。
即使事物的名称很奇怪,secret_key,secure_key,api_key,我认为它们总是相同的,但是我不确定,但是它们给了我,我想是她。
这些API是否有效?有假人指南吗?您可以一步一步地指导我,只是为了了解我做错了什么,即使我做了很少的步骤。
或者也许还有其他可行的脚本或类?
答案 0 :(得分:0)
我想首先,您将需要类似于下面的代码,不要忘记从Github https://github.com/fdcore/vk.api/blob/v2/src/vk.php
下载VK类库。
<?php
// Need to have the vk.php in the same directory.
include 'vk.php';
// Please complete the below with your details/credentials.
$config['secret_key'] = '';
$config['client_id'] = '';
$config['user_id'] = '';
$config['access_token'] = '';
$config['scope'] = 'wall,photos,friends,groups';
// Get a new instance of VK.
$v = new Vk($config);
// Define the attachment to insert, in this case an image.
$attachments = $v->upload_photo(0, array('1737759.jpg'));
// Post the message and image to your wall.
$response = $v->wall->post(array(
'message'=>'test 1737759.jpg',
'attachments' => implode(',', $attachments)
));
?>
该类处理所有幕后编码,并与Vk进行整体交谈。以及为什么要重新发明轮子!
答案 1 :(得分:0)
每个人都停下来!
我删除了该应用程序,然后创建了一个新应用程序...它可以工作...我有一个有效的URL和一个有效的令牌。
但是奇怪的是,这些天来我做了很多测试,尝试了许多脚本,并使用相同的设置(独立)多次创建和删除了应用程序...现在他喜欢它并且可以工作...
现在有了给我吉姆·格兰特(Jim Grant)和令牌的代码,一切正常,我可以通过PHP在VK墙上上传照片。
要使用带有令牌的URL,我使用了以下方法:
$v = new Vk(array(
'client_id' => 123456, // (required) app id
'secret_key' => '', // (required) get on https://vk.com/editapp?id=12345§ion=options
'user_id' => 12345, // your user id on vk.com
'scope' => 'wall,photos,friends,groups', // scope access
'v' => '5.52' // vk api version
));
$url = $v->get_code_token();
echo $url;
然后我授予了权限,并从地址栏中的URL中获取了令牌。
然后我将Jim Grant代码与新令牌一起使用,一切正常。当一切正常时,真的很简单。