我正在使用一个具有“范围”参数的api,该参数可以应用于多个不同的参数项。我关注的范围是“价格”。我在laravel中使用guzzle,根据api文档,对于此特定参数的查询应这样写:“&range_facet = price | 500 | 2500 | 250” ...这分为最小值,最大值和价格范围参数的间隔值。这对于这个问题不一定重要。当我尝试按原样运行此查询时,我什么也没有返回。当我删除该特定参数时,我会得到值,但显然它们并未按照我希望的方式进行过滤。当我在Insomnia中运行此程序时,管道将替换为“%7C”,这显然(显然吗?)没有被api解释,因为这不是它如何等待GET请求。如何将管道插入查询中,以便调用正确的方法?
我试图创建一个附加的嵌套数组,将价格值分解为键值对,但这也不起作用。
'range_facets' => ['price'['start'=>'500', end=>'2500', 'interval'=>'250']],
$client = new Client();
$result = $client->request('GET', "http://api.example.com", [
'headers' => [
'Host' => 'example-host',
'Content-Type' => 'application/json'
],
'query' => [
'api_key' => 'my_api_key',
'range_facets' => 'price|500|2500|250',
'year' => $year,
'latitude' => '30.170222',
'longitude' => '92.01320199',
'radius' => 500,
'start' => 0,
'rows' => 50
]
]);
我想过滤我的价格,但是我需要管道才能做到这一点。