我尝试在MFP 8.0 cordova应用程序中调用受保护的javascript资源适配器(还安装了mfp插件),没有设置任何特定的安全性。在使用的配置下面:
adapter.xml
<?xml version="1.0" encoding="UTF-8"?>
<mfp:adapter name="AccountAdapter"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:mfp="http://www.ibm.com/mfp/integration"
xmlns:http="http://www.ibm.com/mfp/integration/http">
<displayName>AccountAdapter</displayName>
<description>AccountAdapter</description>
<connectivity>
<connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
<protocol>https</protocol>
<domain>mobilefirstplatform.ibmcloud.com</domain>
<port>443</port>
<connectionTimeoutInMilliseconds>30000</connectionTimeoutInMilliseconds>
<socketTimeoutInMilliseconds>30000</socketTimeoutInMilliseconds>
<maxConcurrentConnectionsPerNode>50</maxConcurrentConnectionsPerNode>
</connectionPolicy>
</connectivity>
<procedure name="getUser"/>
javascript应用代码
var resourceRequest = new WLResourceRequest("adapters/AccountAdapter/getUser", WLResourceRequest.GET);
resourceRequest.setQueryParameter("params", "[1]");
resourceRequest.send().then(success, loadFailure);
但回复是
worklight.js:10192 GET http://localhost:6015/mfp/api/adapters/AccountAdapter/getUser?params=%5B1%5D 401 (Unauthorized)
测试是在iOS平台的移动浏览器模拟器中进行的。
我记得在以前版本的MFP中,对适配器的调用会自动协商令牌以访问受保护资源。
在没有完善授权程序的情况下,仍然可以这样做吗?
如果不是,那么调用受保护资源需要什么?
答案 0 :(得分:0)
您是否尝试过禁用安全措施?
在JavaScript适配器中添加secured
属性并将其值设置为false
。
例如:
<procedure name="deleteUser" secured="false">