首页 > 解决方案 > Php Rest API:创建用&符号分隔的数组的问题

问题描述

我有一个疑问:一个 api 请求以下结构:

API 端点

● 生产:

https://api-cbt.mercadolibre.com/api/orders/search/?days=<recentdays>&status=<order_status>&page=
<pageno>&access_token=xxx

● HTTP 方法:GET

● 内容类型头:content-type:application/json

因此,我创建了以下结构:

        $variables = [];
        $variables['days'] = 10;
        $variables['page'] = 1;
        $query = $meli->get('/api/orders/search/', $variables, array('access_token' => $token));

但由于某种原因给出了 HTTPCODE = 401 (这是因为 $variables 和逗号没有被正确考虑,我知道因为 access_token 与其他 API 调用完美配合)。

我的主要问题是我必须做什么才能产生像 days=&status=&page=. 这样的结果。我很困惑,因为我希望以这种方式考虑一个数组,但这不是我的经验。

编辑 - - -

关于 GET:

/**
 * Execute a GET Request
 *
 * @param string $path
 * @param array $params
 * @param boolean $assoc
 * @return mixed
 */
public function get($path, $params = null, $assoc = false) {
    $exec = $this->execute($path, null, $params, $assoc);

    return $exec;
}

该库由MercadoLibrehttps://github.com/mercadolibre/php-sdk/blob/master/Meli/meli.php提供, 在此先感谢..

标签: phprestlaravel-5

解决方案


我会威胁access_token作为一个变量在查询字符串中传递:

        $variables = [];
        $variables['days'] = 10;
        $variables['page'] = 1;
        $variables['access_token'] => $token;

        $query = $meli->get('/api/orders/search/', $variables)

看起来get()第三个参数应该是布尔值,而不是数组。


推荐阅读