我正在使用Appery.io平台构建移动应用,该平台使用基于MongoDB的数据库。我需要将此DB链接到Oracle数据库并使用APEX设计一个界面,以便用户可以从Oracle查询,更新移动App DB以及从移动App更新Oracle DB。
在APEX中,我使用带有 GET 方法的URI:
https://api.appery.io/rest/1/db/collections/Outlet_Details/
我添加标题:
X-Appery-Database-Id
当我在APEX中插入Database-Id运行查询时,APEX以JSON格式显示表/集合 Outlet_Details 。但是,由于我认为CLOB类型的长度,并未显示整个表。
现在我的主要问题是我需要通过名为 _id 的列查询名为 Outlet_Details 的表/集合。所以当我使用以下URI时:
https://api.appery.io/rest/1/db/collections/Outlet_Details/1234
它返回ha _id = 1234的特定记录。但是,我不想对其进行硬编码。相反,我需要更多像where条件,以便我可以根据任何列值进行查询(例如userId而不是_id)。 CURL命令如下:
curl -X GET -H "X-Appery-Database-Id: 544a5cdfe4b03d005b6233b9" -G --data-urlencode 'where={"userId ": "1234"}' https://api.appery.io/rest/1/db/collections/outlet_details/
我的问题是如何将这样的命令插入APEX,特别是(where)部分。
在此tutorial中,使用oracle数据库。因此,使用带有=:DEP条件的where条件,然后将其绑定到变量非常简单。但是,我需要使用MongoDB复制本教程。 另一个问题,我想这对我来说很清楚,在前面提到的教程中,有一个默认的APEX shema URI的前缀URI。即使我插入不同的URI模板,结果URI也会将APEX附加到我插入的URI模板上。如何使用不同的URI构建服务?
答案 0 :(得分:0)
我发现APEX在URL中将条件视为编码参数。类似的东西:
https://api.appery.io/rest/1/db/collections/Outlet_Details?where=%7B%22Oracle_Flag%22%3A%22Y%22%7D
标题相同且没有输入参数。
这可以从“应用程序构建器”>中完成。新申请>数据库>创建应用程序>共享Componenets>创建> REST然后开始插入标题,utl .. etc。
您可以将此link称为参考编码网址