通过 jive 平台从 jive 应用程序到节点客户端进行 REST API 调用
Making REST API calls from jive app through jive platform to node client
我有一个 jive 应用程序,我的节点客户端在 URL http://[nodeclientIP]/myhook/[METHOD_NAME] 后面有一个 REST API。问题是用户无法访问节点客户端,因为它位于防火墙后面。所以我需要告诉 jive 平台为我做这个调用并给我结果。
首先,这可能吗?如果是怎么办?
好吧,我自己找到了答案。
你可以通过jive平台调用你的节点
osapi.http.get({href: "http://yourdomain.com/"})
或
osapi.http.put({href: "http://yourdomain.com/", body: "whatever"})
您也可以注册后端服务“http://[nodeclientIP]/myhook/" using Jive Connects,然后调用API方法如下:
osapi.jive.connects.get({
alias : '[SERVICE_ALIAS]',
href : '[METHOD_NAME]'
}).execute(function(response) {
...
});
这种方法的优点是,例如 URL 或服务的 IP 可以更改,而无需更改代码和安装新版本的应用程序,并且服务的定义在Jive Connects 可以包含基本身份验证或 oAuth 之类的东西,因此应用程序不需要实现身份验证逻辑。
我有一个 jive 应用程序,我的节点客户端在 URL http://[nodeclientIP]/myhook/[METHOD_NAME] 后面有一个 REST API。问题是用户无法访问节点客户端,因为它位于防火墙后面。所以我需要告诉 jive 平台为我做这个调用并给我结果。 首先,这可能吗?如果是怎么办?
好吧,我自己找到了答案。
你可以通过jive平台调用你的节点
osapi.http.get({href: "http://yourdomain.com/"})
或
osapi.http.put({href: "http://yourdomain.com/", body: "whatever"})
您也可以注册后端服务“http://[nodeclientIP]/myhook/" using Jive Connects,然后调用API方法如下:
osapi.jive.connects.get({
alias : '[SERVICE_ALIAS]',
href : '[METHOD_NAME]'
}).execute(function(response) {
...
});
这种方法的优点是,例如 URL 或服务的 IP 可以更改,而无需更改代码和安装新版本的应用程序,并且服务的定义在Jive Connects 可以包含基本身份验证或 oAuth 之类的东西,因此应用程序不需要实现身份验证逻辑。