我们说我有一个不断更新的API。基本上我从一个网站得到它,它是以json格式。但不是使用通常的GET& POST方法,我想知道是否可以使用postgresql来获取它。
我尝试做的是创建一个日常例程,该例程将使用pgadmin运行一个函数,以根据API中的json数据更新服务器中的表。因此它每天自动运行而无需手动输入。
那么可以以查询的形式创建一个GET方法或类似的东西吗?或者还有其他方法可以解决这种问题吗?基本上每天使用API自动获取json数据。
答案 0 :(得分:1)
是的,这是可能的,但它并不是SQL的理想用例。
您可以在Postgres查询中使用this向网站发出GET和POST请求,然后您将JSON作为字符串返回,您可以将其存储在JSON字段中。如果您无法安装Postgres数据库的扩展,我不相信Postgres内置任何内容来发出HTTP请求。
您可以使用一些JSON functions来解析JSON有效负载中的信息,但是它们不能自己预先形成任何复杂的逻辑,因此您可能会创建一个非常大的查询来尝试解析大量数据。
最后,要每天安排查询,您可以使用pgAgent
。这也需要额外安装,因为它已经没有内置到Postgres中。
我说这可能不是一个好主意,因为你应该在数据存储和应用程序逻辑之间保持分离,因为这不是Postgres设计的那种东西。使用连接到Postgres数据库的简单脚本或应用程序以及提供数据的站点网站来捕获和操作数据要容易得多。有些语言更适合处理这种情况,与大规模SQL查询相比,它更易读,更易于维护。
如果您提供有关您为何会这样做的具体方案的更多信息,我可以尝试为您提供更具体和深刻见解的答案。