Spring social vk(Vkontakte):如何获取用户相册

时间:2015-08-10 06:11:34

标签: spring-social vk

我试图将一些春季社交项目整合到我的项目中,现在我正在寻找一种如何从vk / vkontakte获取用户相册的方法。 获取配置文件照片数据是没有问题的,因为我可以使用VKontakteProfile类。 由于api https://vk.com/pages?oid=-17680044&p=getProfiles提供了这样的功能,我正在搜索api方法,但无法找到......

2 个答案:

答案 0 :(得分:1)

要获取用户相册,您必须拥有access_token,因为通常大多数用户都会将自己的相册隐藏在未经过自动操作的人身上。您可以通过使用您创建的应用程序或通过以下链接进行OAuth-autorization来获取它:

https://oauth.vk.com/token?grant_type=password&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username=YOUT_ACCOUNTS_LOGIN&password=YOUR_ACCOUNT_PASSWORD

此链接使用官方vk android应用程序来进行“直接”自动化。 直接 auth仅允许使用ios,android和windows phone app等官方应用。所以client_idclient_secret是来自android-application的数据。它是从反编译的应用程序中提取的。不要害怕:永远不会改变。

因此,如果登录数据正确,您发出此GET请求并得到access_token

然后你应该像这样使用方法photos.getAlbums

https://api.vk.com/method/photos.getAlbums.xml?owner_id=YOUR_PAGE_ID&access_token=YOUR_ACCESS_TOKEN

如您所见,网址包含“.xml”。因此,如果您希望使用JSON格式的响应,请从此网址中删除“.xml”。但是我认为xml更容易解析。

接下来,如果您以后需要获取相册照片,则应使用方法photos.get。要使用它,您需要相册识别号码。根据您的上一次请求,此参数称为“援助”。

您可以使用正则表达式从响应中获取这些参数,表达式应为<aid>(.*?)<\/aid>

接下来,您要求从特定相册中获取数据:

https://api.vk.com/method/photos.get.xml?owner_id=YOUR_ACCOUNT_ID&album_id=PARSED_ALBUM_ID&access_token=YOUT_ACCESS_TOKEN

与“xml”响应格式相同的情况。因此,您将看到对象列表“照片”,其中包含有关此图片的所有数据,如相册中的ID,图片上的链接(不同尺寸),宽度,高度,描述,上传日期等。

随时向我提供有关VK API的任何帮助。

API所有方法的列表在此处:https://vk.com/dev/methods

答案 1 :(得分:0)

据我所知,VK提供了获取用户专辑的API。

photos.getAlbums API方法代表此功能。

例如,
https://api.vk.com/method/photos.getAlbums/?owner_id=5369654&access_token=your_access_token

它对我有用。在这里阅读更多相关信息:
https://vk.com/dev.php?method=methods#/dev/photos.getAlbums