2017-04-07 2 views
0

J'ai javascript Appel WLResourceRequest.POST côté client. J'essaie de lire les valeurs reçues à la fin du serveur. Du côté serveur je peux lire seulement "AB".Lecture des paramètres sendFormParameters pour l'adaptateur JS

code côté client:

var resourceRequest = new WLResourceRequest("/adapters/AdapterNewGet/getFeed", WLResourceRequest.POST); 
var formParameters={"params":"['AB','CD','EF']")}; 
resourceRequest.sendFormParameters(formParameters).then(app.onSuccess, app.onFailure); 

Adaptateur Code Side:

function getFeed(tag) { 
    var input = { 
     method : 'get', 
     returnedContentType : 'xml', 
     path : getPath(tag) 
    }; 
    return MFP.Server.invokeHttp(input); 
} 

Ici, quand j'imprime JSON.stringify(tag), il imprime seulement "AB". S'il vous plaît laissez-moi savoir la façon d'accéder à toutes les valeurs transmises à partir du code client.

+0

Vous utilisez '' post' mais GET'? Qu'est-ce qui se passe avec ce mélange? De plus, vous avez un ")" supplémentaire à la fin de la valeur de 'formParameters'. –

+0

Il ne fonctionne même pas après avoir enlevé ")". Envisager le code côté adaptateur: function getFeed (balise) { return {"Value": "param =" + balise [1]}; // imprime param = B } – deepak

+0

Il ne fonctionne pas même après avoir enlevé ")". Envisager le code côté adaptateur: function getFeed (balise) { return {"Value": "param =" + balise [1]}; // imprime param = B et tag [0] = "A" } Dans MobileFirst Swagger, je peux voir l'URL de demande pour "params" ['AB', 'CD', '' EF] comme suit: http:// localhost: 9080/mfp/api/adapteurs/TestAdapter/getFeed? params =% 5B'AB '% 2C'CD'% 2C'EF '% 5D – deepak

Répondre

0

Pour la carte Javascript, vous devez modifier la signature de la méthode de votre procédure pour inclure les paramètres que vous envoyez.

Pour

var resourceRequest = new WLResourceRequest("/adapters/AdapterNewGet/getFeed", WLResourceRequest.POST); 
var formParameters={"params":"['AB','CD','EF']")}; 
resourceRequest.sendFormParameters(formParameters).then(app.onSuccess, app.onFailure); 

dans votre code client, changer l'adaptateur Javascript pour:

function getFeed(arg1,arg2,arg3) { 

    MFP.Loggerinfo(arg1); 
    MFP.Loggerinfo(arg2); 
    MFP.Loggerinfo(arg3); 
    ..... 

    return MFP.Server.invokeHttp(input); 
}