getfokus / positionly
positionly.com 的 PHP 库
dev-master
2013-12-30 22:24 UTC
Requires
- evert/oauth2: dev-master
This package is not auto-updated.
Last update: 2024-09-14 15:37:28 UTC
README
完整API文档:https://positionly.com/api
目录
###作者 & 联系方式
Piotr Athlan Pelczar - me@athlan.pl
安装
###Composer
在 composer.json
中添加依赖项
"require": {
"getfokus/positionly": "*"
},
使用说明
- 设置 OAuth2 认证的凭证(clientId, clientSecret, username 和 password)并创建 OAuth2\Client 对象。
- 获取 OAuth2 访问令牌(密码方法)
- 将客户端对象传递给 PositionlyApi 实例。
- 调用 API
$response = $api->get('/accounts'); // for https://api.positionly.com/v1/accounts.json // the $response contains the array with result
GET
请求
要执行 GET
请求,只需使用
$response = $api->get('/accounts'); $response = $api->get('/accounts/<account id>/websites'); if($response->isSuccess()) { echo 'Success:'; $result = $response->getResult(); print_r($result); } else { echo 'Failure.'; }
DELETE
请求
要执行 DELETE
请求,只需使用
$response = $api->delete('/accounts/<account id>/websites/<website id>'); if($response->isSuccess()) { echo 'Success:'; } else { echo 'Failure.'; }
POST
请求
要执行 POST
请求,只需使用
$params = array( 'scheme' => 'http', 'name' => 'example.com', 'title' => 'Example website', 'website_engines_attributes' => array( array( "engine_id" => 43, ) ) ); $response = $api->post('/accounts/<account id>/websites', $params); if($response->isSuccess()) { echo 'Success:'; $result = $response->getResult(); print_r($result); } else { echo 'There are errors in form:'; $result = $response->getResult(); print_r($result['errors']); }
完整示例
<?php require_once __DIR__ . '/../vendor/autoload.php'; use PositionlyApi\PositionlyApi; $clientId = ''; $clientSecret = ''; $username = ''; $password = ''; $client = new OAuth2\Client($clientId, $clientSecret); $authorizationParams = array( 'username' => $username, 'password' => $password, ); $result = $client->getAccessToken(PositionlyApi::getTokenEndpoint(), 'password', $authorizationParams); $accessToken = json_decode($result['result'], true); $client->setAccessToken($accessToken['access_token']); $api = new PositionlyApi($client); // get accounts $response = $api->get('/accounts'); print_r($response); ?>