【问题标题】:How to define and store data structure properties in a database如何在数据库中定义和存储数据结构属性
【发布时间】:2015-07-09 08:32:01
【问题描述】:

我正在开发一个带有 Postgres 后端的 PHP Web 应用程序。该应用使用多种 API,并希望能够动态添加/编辑系统使用的 API 端点。

我打算用替换代码处理 API 请求 URL 的变化,例如:http://api.com/?key=%%api_key%%&user_id=%%user_id%%

我没有计划的部分是如何定义和存储返回的 API 数据的“形状”。例如,假设我想从不同的 API 获取用户的 cmets。数据的结构可能会有所不同。即使它们都是json 数据(相对于XML),我关心的属性也会位于不同的地方。有既定的方法可以做到这一点吗?

我正在考虑一个带有 json“映射”到属性位置的文本字段:

{
    "user": {
        "comments" : %%HERE%%
    }
}

大概我的应用程序会解析这个,并循环遍历它以找到指示的位置,然后使用它在响应数据中找到相应位置的数据。但我不知道该怎么做,或者这是否是最好的方法。欢迎提出任何建议。

再想一想,我意识到另一种方法是存储某种算法来查找数据。这有先例吗?我简要地考虑了存储可以执行以解析数据的原始 PHP 代码的想法,但这感觉非常错误并且可能很危险/不安全。

【问题讨论】:

标签: json database postgresql api data-structures


【解决方案1】:

JOLT 可能会有所帮助。它用于将 JSON 转换为 JSON,很像 XML 的 XSLT。您可以为每个新 api 编写规范,将数据转换为统一格式供您的应用读取。

【讨论】:

  • 您的意思是 jsonpjson?我对“json to json”感到困惑
  • 没关系,我明白了。它是为了标准化结构......就像我需要的那样......你知道 PHP 中有什么等价物吗?
  • 在 PHP 中,您可以将 JSON 转换为 XML (stackoverflow.com/questions/856833/…),然后使用 PHP 的 XSLTProcessor 进行转换。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多