Как я могу использовать внешние ресурсы в моем приложении api-платформы - PullRequest
0 голосов
/ 08 июня 2018

У меня есть приложение, которое реализует API-платформу.Это приложение имеет объект с именем UserSnapshot.

namespace App\Entity;

/**
 * Class UserSnapshot
 * @package App\Entity
 */
class UserSnapshot
{
    /**
     * @var integer
     */
    protected $id;

    /**
     * Position of user. Information only.
     * @var Position
     */
    protected $position;

Объект My Position находится в другом микро-сервисе.Я могу связаться с ним, используя следующий URL:

http://127.0.0.1:8002/api/positions

Этот микро сервис использует api-платформу для обслуживания данных;Теперь я хотел бы использовать этот внешний ресурс в своем локальном приложении.Как я могу реализовать это в моей конечной точке UserSnapshot?

Как я могу создать конечную точку положения в моем приложении?

1 Ответ

0 голосов
/ 11 июня 2018

Вы можете реализовать пользовательский DataProvider для пересылки запроса удаленному микросервису.

В этом поставщике данных вам, вероятно, потребуется выполнить HTTP-запрос с помощью Guzzle,десериализовать данные JSON в вашей локальной сущности и позволить API Platform снова сериализовать их.

Если вы хотите вернуть полученный JSON как есть и не нужно декодировать, а затем перекодировать JSON-LD, вы можетеиспользуйте вместо пользовательского действия и пропустите часть десериализации / повторной сериализации.

...