【发布时间】:2016-09-08 13:09:58
【问题描述】:
我们正在使用 MFP7.1 开发 IONIC 应用程序。我们正在尝试调用 REST 网络服务以使用 HTTP 适配器获取一些数据。
我有以下适配器实现文件,
function getFeed(username,password) {
var data = {
"username" : username,
"password" : password
};
var input = {
method : 'post',
returnedContentType : 'plain',
path : 'PATH HERE',
body: {
content: data.toString(),
contentType: 'application/json; charset=utf-8;',
},
};
return WL.Server.invokeHttp(input);
}
这里是adapter.xml,
<mfp:adapter name="http"
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>http</displayName>
<description>http</description>
<connectivity>
<connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
<protocol>http</protocol>
<domain>DOMAIN NAME HERE</domain>
<port>PORT NO HERE</port>
<connectionTimeoutInMilliseconds>30000</connectionTimeoutInMilliseconds>
<socketTimeoutInMilliseconds>30000</socketTimeoutInMilliseconds>
<maxConcurrentConnectionsPerNode>50</maxConcurrentConnectionsPerNode>
</connectionPolicy>
</connectivity>
<procedure name="getFeed"/>
</mfp:adapter>
我们执行以下操作来调用我的离子提供程序中的适配器,
var resourceRequest = new WLResourceRequest("adapters/http/getFeed", WLResourceRequest.GET);
resourceRequest.setQueryParameter("params", "['username', 'password']");
resourceRequest.send().then(
function(response) {
alert('response '+JSON.stringify(response.responseText));
},
function(response) {
alert("HTTP Failure "+JSON.stringify(response));
}
);
我在错误日志中收到以下错误,
"errors\":[],\"info\""statuscode\":400}","responseJSON":{"statusReason":"Bad Request","responseHeaders":{"Transfer-Encoding":"chunked","Server":"Apache-Coyote/1.1","Connection":"close","Content-Type":"text/plain"} ,"isSuccessful":true,"可以 此处不反序列化 WEBSERVICE 实体的实例。用户退出 START_ARRAY 令牌\n at[Siyrce.org.apache.catal.inc.connector.......
【问题讨论】:
-
MFP 服务器上的适配器与后端之间似乎存在问题。似乎后端正在向适配器返回 400 响应,而适配器只是将此 400 响应发送回您的移动客户端。适配器发送到后端的请求是否存在问题?
-
我认为这一行: content: data.toString() 很麻烦。 toString() 不是在 JS 中对对象进行字符串化的正确方法。它会起作用,但在这种情况下它可能只会给你“[Object object]”
-
@s.m.priya,你尝试过 Moty 上面的建议了吗?
标签: javascript ionic-framework ibm-mobilefirst mobilefirst-adapters