n3xtchen / jawbone

PHP Jawbone Up Api

dev-master / 0.1.0.x-dev 2014-07-04 15:05 UTC

This package is not auto-updated.

Last update: 2024-09-24 00:30:30 UTC


README

Jawbone UP API PHP 库

API 版本:v.1.1(官方)

如果您想以任何方式为该项目做出贡献,包括将其更新以支持 API v1.1,请向我发送 pull request!

官方 UP API: jawbone.com/up/developer

需求

PHP 版本: >=5.4

安装

  1. 创建一个名为 composer.json 的新文件,并将其粘贴到其中

    {
    	"require": {
       		"n3xtchen/jawbone": "0.1.0.x-dev"
    	}
    } 
    

    如果您已经有了 composer.json 文件,只需将其添加到其中即可。

    您可以在 packagist.org 上研究组件名称和版本。

  2. 如果您系统上还没有安装 composer,请下载安装。

  3. 下载供应商库并生成 vendor/autoload.php 文件

    $ php composer.phar install 
    

文档

在选项对象中需要 access_token 属性!以下是如何操作的示例。这个库不帮助通过 OAuth 获取 access_token,但一旦您获得令牌,它似乎可以持续一年。

如果您想使用 refreshToken 获取新的刷新令牌,则需要 app_secret 属性。如果不是这样,则不需要。

<?php
Use Jawbone\Up;

//Jawbone Option
$config = [
  'client_id'     => '123',
  'client_secret' => 'abc',
  'access_token'  => 'xyz'
];

$up = new Up($config);

获取

// get All events
$up->get($event_name)               // GET /nudge/api/v.1.1/users/@me/{$event_name}

// get a specific event
$up->get($event_name, $xid)        // GET /nudge/api/v.1.1/{$event_name}/{$xid}

POST

$up->post($event_name, $data);   // POST /nudge/api/v.1.1/users/@me/{$event_name} $data

DELETE

// delete a specific event
$up->delete($event_name, $xid);  // DELETE /nudge/api/v.1.1/{$event_name}/{$xid}

控制台

#!/usr/bin/env php
<?php
// DemoConsole.php

include(__DIR__.'/path/to/vendor/autoload.php');

use Symfony\Component\Console\Application;

use Jawbone\UpCommand;

//Jawbone Option
$config = [
  'client_id'     => '123',
  'client_secret' => 'abc',
  'access_token'  => 'xyz'
];

$application = new Application();
$application->add(new UpCommand($config));
$application->run();

用法

$ php path/to/DemoConsole.php jawbone:up {$event_name} 
	--X='POST|GET|PUT' 
	--data='{"key":"value",...}' 

测试

您可以使用以下命令运行单元测试

```
$ cd path/to/Jawbone/
$ mv phpunit.xml.dist phpunit.xml
$ mv Tests/Fixtures/JawboneOpts.yml.test Tests/Fixtures/JawboneOpts.yml
# Fill Your relative app info in the Tests/Fixtures/JawboneOpts.yml
$ composer.phar install
$ phpunit
```