承接 mattjmattj/yo-client 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

mattjmattj/yo-client

最新稳定版本:1.0.1

Composer 安装命令:

composer require mattjmattj/yo-client

包简介

Another Yo API client

README 文档

README

Build Status Scrutinizer Code Quality Code Coverage

Rationale

There are several Yo API wrapper available for PHP, but none of them are satisfying to me.

First I wanted to find an implementation that was compatible with composer and PSR-4 autoloading. If you don't care about that, you might be interested in this very lightweight implementation : https://github.com/nanexcool/yo-php.

I also wanted to avoid any subsidiary dependency. That's why https://github.com/toin0u/yo didn't do the trick for me, but if you don't care about dependencies then this repo is definitely worth a try.

One last thing : I was not sure whether or not I was right to hate PSR-2 conventions, so I had to find an excuse to try and follow them. So the code here is PSR-2 compliant... and I really don't like that.

Install

with composer

composer.phar require mattjmattj/yo-client

Usage

One of the main goal was no dependencies / maximum interoperability. This means that, to use yo-client, you will have to implement an adapter to your favorite HTTP client, since none is provided. To do that you need to create a class that implements Yo\HTTP\Client. This interface is pretty straightforward since it only has one method:

public function post(\Yo\HTTP\Request $request) : \Yo\HTTP\Response

As long as you know how to send a POST request and return the response you're done. (Actually if you really need an already done adapter, a very light implementation based on curl is provided with yo-client, for testing purpose only).

The second thing you need is an API token. You can grab one in your Yo dashboard : https://dev.justyo.co/.

Now that the hard part is complete, just :

// no : you should not use that one, but...
$http = new \Yo\HTTP\Client\LightCurl();
$api_token = '12345-67890-12345-345678';

$yo = new \Yo\Client($http, $api_token);

// you're done. You can Yo me right now :
$yo->yo('MATTJMATTJ');

// or maybe you want to Yo all your subscribers
$yo->yoAll();

// or Yo me a link to an amazing github repo
$yo->yo('MATTJMATTJ', new \Yo\Link('https://github.com/mattjmattj/yo-client'));

// or Yo me your location
$lat = 12.345;
$long = 67.891;

$yo->yo('MATTJMATTJ', new \Yo\Location($lat, $long);

The Yo client will return Yo API response encapsulated into a Yo\HTTP\Response.

Contributing

You don't really want to do that, do you?

Every contribution is welcome, particularly if you have implemented an HTTP client adapter and want to share it.

The source code if delivered with a makefile that performs some checks, like syntax check or PSR-2 standards compliance. Make sure you run make all before submitting a pull request.

Next (roadmap)

Currently only sending Yos is available. We will implement the rest of Yo's API in the future.

License

Yo-client is licensed under BSD-2-Clause.

统计信息

  • 总下载量: 21
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: BSD-2-Clause
  • 更新时间: 2015-04-07