此包已被弃用且不再维护。作者建议使用 vkcom/vk-php-sdk 包。

VK API 的 Laravel 包

5.63.9 2018-04-28 09:16 UTC

This package is auto-updated.

Last update: 2022-02-01 13:06:25 UTC


README

vk_api

StyleCI Total Downloads Latest Stable Version Latest Unstable Version License

注意

请使用 VK API 的 官方 SDK

菜单

安装

要获取 VK API 包的最新版本,只需使用 Composer 依赖项目即可

$ composer require andrey-helldar/vk

当然,您也可以手动更新 require 块并运行 composer update

{
    "require": {
        "andrey-helldar/vk": "5.63.*"
    }
}

此包的版本基于 VK API 版本,格式如下: x.y.z,其中:

  • x - VK API 的主版本。
  • y - VK API 的次版本。
  • z - 此包的版本。

安装包后,您需要注册服务提供者。打开 config/app.php 并将以下内容添加到 providers 键,或者在 Laravel 5.5+ 中,可以通过自动包发现来完成。

  • Helldar\Vk\VkServiceProvider::class,

接下来,执行以下操作

$ php artisan vendor:publish
$ php artisan migrate

将以下行添加到 .env

VK_CLIENT_ID=
VK_CLIENT_SECRET=
VK_SECRET_KEY=

  • VK_CLIENT_ID - 应用程序 ID
  • VK_CLIENT_SECRET - 安全密钥
  • VK_SECRET_KEY - 服务令牌

更多信息请见 vk.com/dev

好的!使用 vk() 辅助函数。

[ 返回顶部 | 返回菜单 ]

更新包

在开发过程中,我们有时会修改数据库表结构,因此更新到较新版本后,请运行以下命令

$ php artisan migrate

[ 返回顶部 | 返回菜单 ]

请求 & 响应

注意!

为了正确工作,此包的用户必须在网站上授权。

[ 返回顶部 | 返回菜单 ]

模板

此包使用 授权码流 方法访问 VK API(适用于应用程序的服务器端)。

您可以在模板中调用创建按钮的标准方法

{!! vk()->authButton() !!}

或者直接使用路由

{{ route('vk::auth') }}

[ 返回顶部 | 返回菜单 ]

发送请求

要发送请求,请使用以下结构

// vk()->{section}({method})->param1(value1)->param2(value2)->...->paramN+1(valueN+1)->send();
// Example:
vk()->friends('get')->userId(14)->count(20)->send();
vk()->account('banUser')->userId(14)->send();

[ 返回顶部 | 返回菜单 ]

获取响应

要测试并从API获取响应,请使用 get() 方法

// vk()->{section}({method})->get();
// Example:
vk()->friends('get')->get();
vk()->account('banUser')->get();

[ 返回顶部 | 返回菜单 ]

可用方法

账户

  • banUser (1) - 将用户添加到黑名单。
  • changePassword (1) - 在使用 auth.restore 方法成功恢复访问权限后更改用户密码。
  • getActiveOffers (2) - 返回用户执行的活动广告(报价)列表,这将为他/她的应用账户带来相应数量的投票。
  • getAppPermissions (2) - 获取用户在此应用中的设置。
  • getBanned (1) - 返回用户的黑名单。
  • getCounters (2) - 返回用户计数器的非空值。
  • getInfo (1) - 返回当前账户信息。
  • getProfileInfo (1) - 返回当前账户信息。
  • getPushSettings (1) - 获取推送通知的设置。所需权限:消息
  • lookupContacts (1) - 允许使用电话号码、电子邮件地址和其他服务上的用户ID搜索VK用户。您还可以通过 friends.getSuggestions 方法获取这些用户。所需权限:朋友
  • registerDevice (1) - 将基于iOS/Android/Windows Phone的设备订阅以接收推送通知。所需权限:消息
  • saveProfileInfo (1) - 编辑当前个人资料信息。
  • setInfo (1) - 允许编辑当前账户信息。
  • setNameInMenu (2) - 设置应用屏幕名称(最多17个字符),在左侧菜单中显示给用户。仅在用户从应用页面、应用列表和设置中添加此类应用到左侧菜单时才会发生。
  • setOffline (1) - 将当前用户标记为离线。
  • setOnline (1) - 将当前用户标记为在线15分钟。
  • setPushSettings (1) - 更改推送设置。所需权限:消息
  • setSilenceMode (1) - 在设定的时间内静音推送通知。所需权限:消息
  • unbanUser (1) - 从黑名单中删除用户。
  • unregisterDevice (1) - 取消设备订阅推送通知。所需访问权限:消息

更多内容请参阅 VK API: 账户

[ 返回顶部 | 返回菜单 ]

广告

正在测试 VK 广告账户的API。如果API有任何错误或问题,请通过 api@vk.com 联系我们。

在调用API方法之前,您需要在 服务器客户端 端进行授权。之后,您可以使用标准的 交互模式 发送任何API请求。

此外,在开始使用广告API之前,请阅读 限制和建议

以下列出的是所有用于操作VK广告账户数据的API方法。

所需访问权限:广告

  • addOfficeUsers (2) - 向广告账户添加经理和/或主管。
  • checkLink (2) - 允许检查广告链接。
  • createAds (2) - 创建广告。请注意!单个请求中创建的广告最大数量为5。广告受众的最小人数为50人。
  • createCampaigns (2) - 创建广告活动。请注意!单个请求中创建的广告活动数量限制为50。
  • createClients (2) - 创建广告代理机构的客户。仅适用于广告代理商。请注意!单个请求中创建的客户的最大数量为50。
  • createTargetGroup (2) - 创建一个用于重新定位广告的用户组,这些用户已访问广告商的网站(查看产品信息、注册等)。
  • deleteAds (2) - 归档广告。
  • deleteCampaigns (2) - 归档广告活动。
  • deleteClients (2) - 归档广告代理商的客户。仅适用于广告代理商。
  • deleteTargetGroup (2) - 删除重新定位用户组。
  • getAccounts (2) - 返回广告账户列表。
  • getAds (2) - 返回广告数量。
  • getAdsLayout (2) - 返回广告布局描述。
  • getAdsTargeting (2) - 返回广告定位参数。
  • getBudget (2) - 返回广告账户当前预算。
  • getCampaigns (2) - 返回广告账户中的广告活动列表。
  • getCategories (2) - 返回可能的广告类别列表。
  • getClients (2) - 返回广告代理机构的客户列表。仅适用于广告代理商。
  • getDemographics (2) - 返回广告或活动的受众人口统计数据。
  • getFloodStats (2) - 返回计数器当前状态的信息——方法剩余运行次数和下一个计数器归零的秒数。
  • getOfficeUsers (2) - 返回广告账户的管理员和主管列表。
  • getPostsReach (2) - 返回帖子的覆盖范围。
  • getRejectionReason (2) - 返回预审拒绝广告的原因。
  • getStatistics (2) - 返回广告、活动、客户或整个账户的性能指标统计。
  • getSuggestions (2) - 返回各种定向参数的自动建议集合。
  • getTargetGroups (2) - 返回目标群体列表。
  • getTargetingStats (2) - 返回目标受众群体的大小,以及推荐的CPC和CPM值。
  • getUploadURL (2) - 返回上传广告照片的URL。
  • getVideoUploadURL (2) - 返回上传广告视频的URL。
  • importTargetContacts (2) - 将广告商的联系人列表导入,以统计VK注册用户与目标群体。请注意!单次请求中导入的联系人最大数量为1000。
  • removeOfficeUsers (2) - 从广告账户中移除管理员和/或主管。
  • updateAds (2) - 编辑广告。请注意!单次请求中允许编辑的广告数量为20。广告受众的最小规模为50人。
  • updateCampaigns (2) - 编辑广告活动。
  • updateClients (2) - 编辑广告代理商的客户。仅适用于广告代理商。请注意!单次请求中允许编辑的客户最大数量为50。
  • updateTargetGroup (2) - 编辑重定向群体。

更多信息请参见 VK API:广告

[ 返回顶部 | 返回菜单 ]

应用

  • deleteAppRequests (1) - 删除当前应用的所有请求通知。
  • get (2) - 返回应用数据。
  • getCatalog (2) - 返回用户在应用目录中可用的应用列表。您可以从同一IP地址或ID调用此方法,但一分钟内不得超过60次。
  • getFriendsList (2) (1) - 为当前应用中的请求和邀请创建朋友列表。
  • getLeaderboard (2) - 返回游戏中的玩家评分。
  • getScore (2) - 返回用户在应用中的得分。
  • sendRequest (1) - 向使用VK授权的应用中的另一个用户发送请求。

更多信息请参阅 VK API: Apps

[ 返回顶部 | 返回菜单 ]

身份验证

  • checkPhone (3) - 检查用户电话号码的正确性。
  • confirm (3) - 使用授权代码完成用户的注册(通过auth.signup方法开始)。
  • restore (2) - 允许使用通过短信收到的代码恢复账户访问。
  • signup (3) - 通过电话号码注册新用户。

更多信息请参阅 VK API: Auth

[ 返回顶部 | 返回菜单 ]

论坛

所需权限: groups

  • addTopic (1) - 在社区讨论板上创建新的主题。
  • closeTopic (1) - 关闭社区讨论板上的主题,以便无法发表评论。
  • createComment (1) - 在社区讨论板上的主题中添加评论。
  • deleteComment (1) - 删除社区讨论板上的主题评论。
  • deleteTopic (1) - 从社区讨论板上删除主题。
  • editComment (1) - 编辑社区讨论板上的主题评论。
  • editTopic (1) - 编辑社区讨论板上的主题标题。
  • fixTopic (1) - 将主题(固定位置)固定到社区讨论板顶部。
  • getComments (2) - 返回社区讨论板上主题的评论列表。
  • getTopics (2) - 返回社区讨论板上的主题列表。
  • openTopic (1) - 重新打开社区讨论板上之前关闭的主题。
  • restoreComment (1) - 恢复已从社区讨论板上的主题中删除的评论。
  • unfixTopic (1) - 将固定的主题从社区讨论板顶部取消固定。

更多信息请参阅 VK API: Board

[ 返回顶部 | 返回菜单 ]

数据库

这些方法提供对VK教育机构数据库的访问。数据访问免费且不需要授权,但来自一个IP地址的请求数量可能有限。如果您需要执行许多请求,我们建议您从客户端使用JSONP调用这些方法。

所需权限: groups

  • getChairs (2) - 返回指定院系中的椅子列表。
  • getCities (2) - 返回城市列表。
  • getCitiesById (2) - 根据ID返回城市信息。
  • getCountries (2) - 返回国家列表。
  • getCountriesById (2) - 根据ID返回国家信息。
  • getFaculties (2) - 返回院系列表(即大学部门)。
  • getRegions (2) - 返回地区列表。
  • getSchoolClasses (2) - 返回指定国家的学校班级列表。
  • getSchools (2) - 返回学校列表。
  • getStreetsById (2) - 根据ID返回街道信息。
  • getUniversities (2) - 返回高等教育机构列表。

更多信息请查看 VK API: Database

[ 返回顶部 | 返回菜单 ]

文档

所需权限: docs.

  • add (2) - 将文档复制到用户或社区文档列表。
  • delete (2) - 删除用户或社区文档。
  • edit (2) - 编辑文档。
  • get (2) - 返回用户或社区文档的详细信息。
  • getById (2) - 根据ID返回文档信息。
  • getTypes (2) - 返回当前用户可用的文档类型。
  • getUploadServer (2) - 返回文档上传的服务器地址。
  • getWallUploadServer (2) (4) - 返回将文档上传到用户或社区墙面的服务器地址。
  • save (2) (4) - 在服务器上上传文档后保存文档。
  • search (2) (4) - 根据搜索条件返回文档列表。

更多信息请查看 VK API: Docs

[ 返回顶部 | 返回菜单 ]

执行

  • execute (2) (3) - 在保存和过滤中间结果的同时调用一系列其他方法的通用方法。

更多信息请查看 VK API: Execute

[ 返回顶部 | 返回菜单 ]

朋友

所需权限: messages.

  • add (1) - 同意或创建好友请求。
  • addList (1) - 为当前用户创建一个新的好友列表。
  • areFriends (2) - 检查当前用户与其他指定用户之间的好友关系状态。同时返回信息,指定是否存在已发送或接收的好友请求(新关注者)。
  • delete (1) - 拒绝好友请求或从当前用户的好友列表中删除用户。
  • deleteAllRequests (1) - 标记所有收到的好友请求为已查看。
  • deleteList (1) - 删除当前用户的好友列表。
  • edit (1) - 编辑选定用户的好友列表。
  • editList (1) - 编辑当前用户的好友列表。
  • get (2) - 返回用户ID列表或关于用户好友的详细信息。
  • getAppUsers (2) - 返回已安装应用程序的当前用户好友的ID列表。
  • getByPhones (1) - 返回当前用户好友的电话号码列表,这些号码已验证或已在个人资料中指定。
  • getLists (1) - 返回用户好友列表。
  • getMutual (2) - 返回两位用户共同好友的用户ID列表。
  • getOnline (2) - 返回当前用户好友在线的用户ID列表。
  • getRecent (2) - 返回当前用户最近添加的好友的用户ID列表。
  • getRequests (1) - 返回当前用户收到的和发送的好友请求的信息。
  • getSuggestions (1) - 返回当前用户可能认识的用户列表。为了使方法返回足够多的建议,首先需要调用方法 account.importContacts。
  • search (2) - 返回符合搜索条件的朋友列表。

更多信息请查看 VK API: 好友

[ 返回顶部 | 返回菜单 ]

所需访问权限: wall

  • add (1) - 将指定的对象添加到当前用户的赞列表中。
  • delete (1) - 从当前用户的赞列表中删除指定的对象。
  • getList (2) - 返回已将指定对象添加到他们赞列表中的用户的ID列表。
  • isLiked (2) - 检查指定用户赞列表中的对象。

更多信息请查看 VK API: 赞

[ 返回顶部 | 返回菜单 ]

消息

所需权限: messages.

  • send - 发送消息。

更多信息请查看 VK API: Messages

[ 返回顶部 | 返回菜单 ]

(1) 此方法可以通过在 Standalone-app 中通过 Implicit Flow 获得的用户令牌来调用。

(2) 此方法可以通过 用户令牌 来调用。

(3) 此方法可以通过 服务令牌 来调用。

(4) 此方法可以通过 社区令牌 来调用。

版权和许可

Vk 由 Andrey Helldar 为 Laravel Framework 5.4 或更高版本编写,并许可于 MIT 许可证

[ 返回顶部 | 返回菜单 ]

翻译

文本和评论的翻译由 Google 翻译提供。翻译帮助 +1 在 karma :)

对 VK API 方法的描述摘自 VK API。

[ 返回顶部 | 返回菜单 ]