zabouth / phpmoves
Moves App API
Requires
- php: >=5.3.3
This package is not auto-updated.
Last update: 2023-08-29 03:58:33 UTC
README
## 工作流程
使用moves提供的client_id和client_secret创建PHPMoves类的新实例
$m = new PHPMoves\Moves('client_id','client_secret','redirect_url');
生成请求URL并展示给用户。
$request_url = $m->requestURL(); <a href="<?php echo $request_url; ?>">Click Here</a>
一旦用户成功认证,他们将被重定向回redirect_url,并在请求中包含一个授权码。此代码传递给auth方法以获取access_token和refresh_token。访问令牌将用于所有未来的API调用。refresh_token用于在当前令牌无效或过期时请求新的access_token。
$request_token = $_GET['code']; $tokens = $m->auth($request_token); $access_token = $tokens['access_token']; $refresh_token = $tokens['refresh_token'];
现在可以使用access_token进行API调用。
echo json_encode($m->get_profile($access_token));
## 类方法
##### requestURL() 生成move API认证页面的URL。
##### validate_token($access_token) 检查access_token是否有效,如果令牌已过期或被撤销则返回false。
##### auth($authorization_code) 将授权码交换为访问令牌和刷新令牌。返回包含两者的关联数组。
##### refresh($refresh_token) 刷新访问令牌和刷新令牌,同时过期旧令牌。返回包含更新令牌的关联数组。
##### get_profile($access_token) 返回用户moves配置文件作为数组。
##### get_range($access_token, $endpoint, $start, $end, $otherParameters = array())
用于获取两个日期范围之间的API数据 $start
和 $end
需要为格式 yyyyMMdd
或 yyyy-MM-dd
的日期,最大请求大小为7天。返回一个数组,请参阅示例以了解用法。
$summary = $m->get_range($access_token,'/user/summary/daily', $start, $end) $activities = $m->get_range($access_token,'/user/activities/daily', $start, $end) $places = $m->get_range($access_token,'/user/places/daily', $start, $end) $storyline = $m->get_range($access_token,'/user/storyline/daily', $start, $end)