php - 如何在我的 api 平台应用程序中使用外部资源
问题描述
我有实现 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;
我的职位实体在不同的微服务中。我可以使用以下 URL 访问它:
http://127.0.0.1:8002/api/positions
该微服务使用 api-platform 提供数据;现在我想在我的本地应用程序中使用这个外部资源。如何将它实现到我的 UserSnapshot 端点?
如何在我的应用程序中创建位置端点?
解决方案
您可以实现自定义 DataProvider以将请求转发到远程微服务。
在此数据提供程序中,您可能希望使用 Guzzle 执行 HTTP 查询,反序列化本地实体中的 JSON 数据,并让 API 平台再次对其进行序列化。
如果您想按原样返回检索到的 JSON 并且不需要解码然后重新编码 JSON-LD,您可以改用自定义操作并跳过反序列化/重新序列化部分。
推荐阅读
- python - 带有日志记录的 Python Windows 计划
- python - 如何使用 BeautifulSoup 和 headers 避免 403 问题?
- python - 排序功能不会对用户输入的列表进行排序
- java - 从java中的if语句(具有多个AND类型的条件)中查找失败的条件
- javascript - 允许不和谐机器人访问直接消息讨论的消息数据
- intellij-idea - intellij 2020.1 sbt mainRunner 配置
- android - Android NDK 构建的库在设备上崩溃,但在模拟器中运行良好
- google-apps-script - 如何从工作表中获取数据到我的下拉框
- function - 在主页小部件上方找不到 coorect 提供程序
- javascript - NODE.js 和 ORACLE,dbObject 的问题