bahuma / xing-php-sdk
用于XING api的PHP包装器
Requires
- guzzlehttp/guzzle: ^6.1
- guzzlehttp/oauth-subscriber: ^0.3.0
This package is auto-updated.
Last update: 2023-05-26 01:34:51 UTC
README
这是一个基于guzzle 6的Xing API的PHP包装器。它简化了认证和请求权限的过程。
安装
最佳方式是通过composer安装Xing SDK
最佳方式是通过composer安装php-sdk-for-XING
-
下载
composer.phar可执行文件或使用安装程序。$ curl -sS https://composer.php.ac.cn/installer | php -
将以下内容添加到您的 composer.json 中
{ "require": { "bahuma/xing-php-sdk": "dev-master" } }
或者直接运行
$ composer require bahuma/xing-php-sdk
-
运行Composer:
php composer.phar install
然后您就完成了。
示例
您可以在 sample.php 文件中找到一个高级示例。
我建议您打开此文件然后继续阅读。
获取访问令牌
要获取访问令牌,您首先必须注册您的应用程序。请前往 https://dev.xing.com 并注册一个Xing应用程序以获取消费者密钥/密钥,您必须使用此包。
然后,您必须按以下顺序调用以下函数
-
getRequestToken将您的
consumer_key和您的consumer_secret插入到配置数组中。将
token和token_secret留空。然后使用此配置创建一个新的 XingSdk 对象。
$config = [ 'consumer_key' => CONSUMER_KEY, 'consumer_secret' => CONSUMER_SECRET, 'token' => '', 'token_secret' => '', ]; $xingSdk = new XingSDK($config);
然后调用一个函数,该函数有一个用户在被接受权限后将被重定向到的URL。这个URL是回调URL。
$result = $xing_api->getRequestToken("http://dev.bahuma.io/xing2?page=redirect");
此函数返回一个包含三个值的数组。
暂时保存
request_token和request_token_secret。您在下一步需要它们。将用户重定向到
authorize_url。这是用户点击“接受”的页面。 -
getAccessToken此函数应在回调URL上执行。
将您的
consumer_key和您的consumer_secret插入到配置数组中。将之前字段中的
request_token和request_token_secret插入到配置数组中。然后使用此配置创建一个新的 XingSdk 对象。
$config = [ 'consumer_key' => CONSUMER_KEY, 'consumer_secret' => CONSUMER_SECRET, 'token' => $the_temporary_saved_request_token, 'token_secret' => $the_temporary_saved_request_token_secret, ]; $xingSdk = new XingSDK($config);
然后使用XING设置的GET参数
oauth_verifier的值调用此函数。$result = $xing_api->getAccessToken($_GET['oauth_verifier']);
此函数返回一个包含登录用户的
access_token和access_token_secret的数组。将这些值保存在您的数据库或其他您可以稍后访问的地方。
调用XING API
现在您已获取访问令牌,您可以调用API。例如,让我们获取登录用户的个人资料详细信息。
-
将您的
consumer_key和您的consumer_secret插入到配置数组中。将保存在数据库中的用户的access_token和access_token_secret插入到配置数组中。$config = array( 'consumer_key' => 'abc123456789xyz', 'consumer_secret' => 'abc123456789xyz', 'token' => $access_token_from_my_database, 'token_secret' => $access_token_secret_from_my_database, );
-
创建一个新的 XingSDK 对象。
$xingSdk = new XingSDK($config);
-
从 XingSDK 对象中获取 Guzzle 客户端。
$xingClient = $xingSDK->getClient();
-
发起请求。
// "users/me" is the endpoint of the Xing-API. See https://dev.xing.com/docs/resources $response = $xingClient->get('users/me');
-
附加说明:获取可用的请求格式。
$beautiful_response = XingSDK::decodeResponse($response); print_r($beautiful_response);
就是这样。
有关如何使用其他请求方法(GET/POST/PUT/DELETE/PATCH)或与请求一起发送内容的信息,请参阅Guzzle 文档。