Javascript 如何在MobileFirst 8的JS HTTP适配器中动态传递JSON对象

Javascript 如何在MobileFirst 8的JS HTTP适配器中动态传递JSON对象,javascript,ionic-framework,ibm-mobilefirst,mobilefirst-adapters,Javascript,Ionic Framework,Ibm Mobilefirst,Mobilefirst Adapters,我使用javascript Http适配器通过SOAP Web服务获取数据。在这里,我使用离子与MFP8.0 我的适配器实现文件是 function getFeed(method, data) { var sr = "<soapenv:Envelope " + "xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" " + "xmlns:len=\"targetNamespace

我使用javascript Http适配器通过SOAP Web服务获取数据。在这里,我使用离子与MFP8.0

我的适配器实现文件是

function getFeed(method, data) {
    var sr =
        "<soapenv:Envelope " +
          "xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" " + "xmlns:len=\"targetNamespace HERE" >" +
        "<soapenv:Header/>"+
        "<soapenv:Body>" +
        "<len:authentication>" +
        "<method>"+method+"</method>"+ data +
        "</authentication></soapenv:Body></soapenv:Envelope>";

    var input = {
        method : 'post',
        returnedContentType : 'xml',
        path : 'PATH HERE',
        body: {
            content: sr,
            contentType: 'text/xml; charset=utf-8',
        },
    };
    return MFP.Server.invokeHttp(input);
}
我需要动态地传递JsonObject,它包含用户名和密码。我通过参数发送对象

但是,我无法获取xml格式的数据。
有谁能告诉我如何使用XML格式的JSON对象。

根据您提供的示例,在客户端代码中有一个名为dataList的变量,它是一个包含用户名和密码的对象。但是,当您将数据传递给WLResourceRequest时,您不会传递此对象,而是传递字符串“dataList”

如果要传递对象而不是字符串,可以按如下方式进行:

var dataList={
 username:data.uname,
 password:data.pswd
};

resourceRequest.setQueryParameter("params", "['myMethod', '" + JSON.stringify(dataList) + "']");
function getFeed(method, data) {
    var username = data.username;
    var password = data.password;
  . . . 
现在,当您调用适配器时,第一个参数将接收字符串“myMethod”,第二个参数将是一个对象。因此,您可以访问用户名和密码,例如:

var dataList={
 username:data.uname,
 password:data.pswd
};

resourceRequest.setQueryParameter("params", "['myMethod', '" + JSON.stringify(dataList) + "']");
function getFeed(method, data) {
    var username = data.username;
    var password = data.password;
  . . . 

给定您提供的示例,在客户机代码中有一个名为dataList的变量,它是一个包含用户名和密码的对象。但是,当您将数据传递给WLResourceRequest时,您不会传递此对象,而是传递字符串“dataList”

如果要传递对象而不是字符串,可以按如下方式进行:

var dataList={
 username:data.uname,
 password:data.pswd
};

resourceRequest.setQueryParameter("params", "['myMethod', '" + JSON.stringify(dataList) + "']");
function getFeed(method, data) {
    var username = data.username;
    var password = data.password;
  . . . 
现在,当您调用适配器时,第一个参数将接收字符串“myMethod”,第二个参数将是一个对象。因此,您可以访问用户名和密码,例如:

var dataList={
 username:data.uname,
 password:data.pswd
};

resourceRequest.setQueryParameter("params", "['myMethod', '" + JSON.stringify(dataList) + "']");
function getFeed(method, data) {
    var username = data.username;
    var password = data.password;
  . . . 

实际上,我要求它在适配器文件中动态地传递xml中的数据,比如,“+method+”+data+xml标记应该是动态的,以便传递数据。你能告诉我怎么做吗?实际上,我要求它在适配器文件中动态地传递xml中的数据,比如,“+method+”+data+xml标记应该是动态的,以便传递数据。你能告诉我怎么做吗?