Я новичок в разработке Symfony, поэтому извините меня, если это глупый вопрос. Я пытаюсь получить данные JSON из внешнего API. Я попытался запустить GET-запрос через Postman и вернул правильные данные в формате JSON, поэтому я знаю, что мой URL-адрес правильный.Используйте Guzzle для HTTP GET для внешнего API с Symfony
Я следующий код, написанный для использования жрать в HTTP GET набора данных JSON из моего внешнего API:
<?php
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Request;
use Psr\Http\Message\ResponseInterface;
use GuzzleHttp\Client;
class ScheduleController {
/**
* @Route("/schedule")
*/
public function getJobs() {
// Create a client with a base URI
$client = new GuzzleHttp\Client(['base_uri' => 'http://my.api.url/']);
// Send a request to http://my.api.url/site/67/module/1449/item
$response = $client->request('GET', 'site/67/module/1449/item');
dump($response);
}
}
Я пытаюсь следовать так близко, как я могу с the Guzzle quick start guide. я получаю 500 ошибка с этого кода: Attempted to load class "Client" from namespace "AppBundle\Controller\GuzzleHttp". Did you forget a "use" statement for e.g. "Symfony\Component\BrowserKit\Client", "Symfony\Component\HttpKernel\Client" or "Symfony\Bundle\FrameworkBundle\Client"?
У меня есть заявление использования для use GuzzleHttp\Client;
Что я делаю неправильно? Есть ли более простой способ сделать это?
Я получил эту ошибку от этого изменения (я использую первую строку кода, которую вы предложили): 'Попытка загрузить класс« Клиент »из пространства имен« GuzzleHttp ». Вы забыли инструкцию «use», например. «Symfony \ Component \ BrowserKit \ Client», «Symfony \ Component \ HttpKernel \ Client» или «Symfony \ Bundle \ FrameworkBundle \ Client»? ' – Liz
Действительно ли вы установили жульничество через композитор? Исходя из этой ошибки, кажется, что жужжание не установлено. –
Я установил его. Есть ли способ устранить установку? – Liz