vcoud/mercadolibre

Mercadolibre SDK Composer 包

1.0.1 2016-10-14 06:36 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:42:16 UTC


README

Latest Stable Version mercadolibre-sdk

MercadoLibre 的 PHP SDK Composer 包

这是 MercadoLibre 的 PHP Sdk 的分支,我们只为 Laravel 项目实现它变得更简单

如何安装它?

   composer require vcoud/mercadolibre

如何使用它?

首先需要实例化一个 Meli 类。你需要提供一个 clientId 和一个 clientSecret。你可以在创建自己的应用程序后获取这两个值。有关更多信息,请参阅:创建应用程序

创建 Meli 类的实例

非常简单,就像这样

use Vcoud\Mercadolibre\Meli;

$meli = new Meli('1234', 'a secret');

有了这个实例,你可以开始使用 MercadoLibre 的 API 了。

有一些设计考虑值得提及。

  1. 这个 SDK 在 http 客户端之上仅仅是一个薄层,用于处理所有的 OAuth WebServer 流程。

  2. 有 JSON 解析。这个 SDK 将包括 json 用于内部使用。

  3. 这个 SDK 将包括 curl 用于内部使用。

  4. 如果你已经有了 access_token 和 refresh_token,你可以在构造函数中传递它们

$meli = new Meli('1234', 'a secret', 'Access_Token', 'Refresh_Token');

如何重定向用户以授权我的应用程序?

这是一个两步过程。

首先获取重定向用户的链接。这很简单!只需

$redirectUrl = $meli->getAuthUrl("http://somecallbackurl",Meli::$AUTH_URL['MLB']); //  Don't forget to set the autentication URL of your country.

这将给出重定向用户的 URL。你需要指定一个回调 URL,这是用户成功授权过程后的重定向地址。

一旦用户被重定向到你的回调 URL,你将在查询字符串中接收到一个名为 code 的参数。你需要这个参数来完成第二部分的过程。

$user = $meli->authorize($_GET['code'], 'http://somecallbackurl');

这将为你和你的用户获取一个 access_token 和一个 refresh_token(如果应用程序有 offline_access)。

在这个阶段,你就可以代表用户调用 API 了。

执行 GET 调用

$params = array('access_token' => $access_token);
$result = $meli->get('/users/me', $params); 
 #If you wish , you can get an associative array with param $assoc = true Example:
$result = $meli->get('/users/me', $params, true); 

执行 POST 调用

$params = array('access_token' => $access_token);

  #this body will be converted into json for you
$body = array('foo' => 'bar', 'bar' => 'foo');

$response = $meli->post('/items', $body, $params);

执行 PUT 调用

$params = array('access_token' => $access_token);

  #this body will be converted into json for you
$body = array('foo' => 'bar', 'bar' => 'foo');

$response = $meli->put('/items', $body, $params);

执行 DELETE 调用

$params = array('access_token' => $access_token);
$response = $meli->delete('/questions/123', $params)