我正在使用 IBM MobileFirst 创建一个应用程序。我已经创建了一个 HTTP 适配器,现在我正在我的 main.js 文件中调用响应。这是 invokeProcedure 调用(invocationData var 调用适配器和该适配器内的过程):
WL.Client.invokeProcedure(invocationData,{
onSuccess : loadSuccess(),
onFailure : loadFailure(),
});
现在,我已经定义了一个 loadSuccess() 和一个 loadFailure() 函数(在调用之前声明)(简单用于测试目的):
var loadSuccess = function(result){
alert("success");
alert(result.invocationResult);
}
var loadFailure = function(result){
alert("failure");
alert(result.invocationResult);
}
然而,虽然“成功”和“失败”会闪烁,但“结果”会返回为空。我见过的每个教程都成功地使用了这些方法,所以我很困惑为什么我的类似实现不起作用。此外,invokeProcedure 函数似乎正在调用并显示成功和失败选项的结果!
当我刚刚测试时,我的适配器会返回一个适当的响应,那么为什么数据的调用不能正常工作呢?IBM 文档不是很清楚,所以我很感激任何和所有的建议!
编辑:
我将 main.js 更新为以下代码:
function loadSuccess(result){
alert("success");
}
function loadFailure(result) {
alert("failure");
}
function testFunc(userid, password) {
var invocationData = {
adapter : 'myAdapter',
procedure : 'myProc',
parameters : [ userid, password ],
};
WL.Client.invokeProcedure(invocationData,{
onSuccess : loadSuccess,
onFailure : loadFailure
});
}
当我测试我的适配器时,只需调用它,响应就成功了,并且包含了我想要的所有响应信息。那么为什么这里不调用 onSuccess 呢?