从 REST 客户端调用 Worklight Javascript SQL 适配器

Posted

技术标签:

【中文标题】从 REST 客户端调用 Worklight Javascript SQL 适配器【英文标题】:Call Worklight Javascript SQL Adapter form REST Client 【发布时间】:2015-09-08 05:17:30 【问题描述】:

我正在使用 IBM Worklight 7.1,我正在尝试调用 javascript SQL 适配器表单 REST 客户端,例如 HttpRequester。我可以调用适配器,但不知道如何将参数传递给过程。

对于名为MyAdapter的适配器和名为myProc的过程,我可以使用baseUrl/MyAdapter/myProc调用适配器,同时使用GETPOST方法形成REST客户端,但过程中的所有参数都是undefined

function myProc(a,c)       
        return 
            result : "OK"
        ;

我尝试过以下方式传递参数。

    作为查询字符串?a=b&c=d 作为 JSON 字符串 "a":"b","c":"d" 将数组中的参数作为参数传递=['b','c']

为什么这样做

这样做的原因是为了使数据设置程序调用输出检查数据擦除过程通过编写脚本使测试变得简单和自动化。因此,如果已经存在任何其他更好的流程来自动执行上述步骤,请随时提出建议。

【问题讨论】:

【参考方案1】:

调用 JavaScript 适配器时(此答案不适用于 Java 适配器),REST 调用应如下所示:

/project-context/adapters/adapter-name/procedure-name/?params=[a,b,c,d]

换句话说,一个 JavaScript 过程只接收一个名为 params 的参数,它需要是一个有序的、未命名的值的数组。

【讨论】:

我在这里添加了一段:developer.ibm.com/mobilefirstplatform/documentation/… 感谢您的回答。还有一个问题是,如果我的参数太长,它们可能会出现问题。有没有办法通过 POST 方法传递它们? 是的,使用Content-Type: application/x-www-form-urlencoded并将正文设置为params=[a,b,c]

以上是关于从 REST 客户端调用 Worklight Javascript SQL 适配器的主要内容,如果未能解决你的问题,请参考以下文章

IBM Worklight - 无法从客户端调用插入查询的 SQL 适配器过程。我的编码有啥问题?

IBM Worklight 6.0 - 如果客户端注销/登录,具有基本身份验证的适配器不会更新身份验证标头

Worklight 6.1:是不是有任何服务器调用要求在客户端进行加密缓存

如何在 Worklight 6.2 中链接来自移动客户端的适配器调用?

无法从 Worklight Liberty 服务器中的 HTTP 适配器调用 java 类

使用 ApacheDS 2.0 的 Worklight LDAP 认证