1
폭식/Psr7 요청에 쿼리 매개 변수를 얻는 방법 :나는 클라이언트를 조롱과 같이 사용하는 것을 시도하고있다</p> <p>목구멍 6을 사용하고
이<?php
use GuzzleHttp\Client;
use GuzzleHttp\Handler\MockHandler;
use GuzzleHttp\HandlerStack;
use GuzzleHttp\Middleware;
use GuzzleHttp\Psr7\Request;
use GuzzleHttp\Psr7\Response;
$mock_handler = new MockHandler([
new Response(200, ['Content-Type' => 'application/json'], 'foo'),
]);
$history = [];
$history_middleware = Middleware::history($history);
$handler_stack = HandlerStack::create($mock_handler);
$handler_stack->push($history_middleware);
$mock_client = new Client(['handler' => $handler_stack]);
// Use mock client in some way
$mock_client->get("http://example.com", [
'query' => [
'bar' => '10',
'hello' => '20'
],
]);
// ------
// get original request using history
$transaction = $history[0];
/** @var Request $request */
$request = $transaction['request'];
// How can I get the query parameters that was used in the request (i.e. bar)
내 질문 할 수있는 방법입니다 GuzzleHttp\Psr7\Request
클래스에 사용 된 쿼리 매개 변수가 있습니까?
가장 가까운 항목은 다음과 같습니다. $request->getUri()->getQuery()
하지만이 문자열은 단지 bar=10&hello=20
과 같은 문자열을 반환합니다.