2017-04-07 10 views
0

クライアントサイドでjavascript WLResourceRequest.POSTコールがあります。私はサーバー側で受け取った値を読み取ろうとしています。サーバー側では、私は "AB"だけを読むことができます。JSアダプタのsendFormParametersパラメータを読み取る

クライアント側コード:

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

アダプタ側のコード:

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

私はJSON.stringify(tag)を印刷するとき、それは唯一の "AB" を出力します。 渡されたすべての値にクライアントコードからアクセスする方法を教えてください。

+0

?この混合には何がありますか?また、 'formParameters'の値の最後に余分な") "があります。 –

+0

")"を削除しても機能しません。アダプタ側のコードを検討する: function getFeed(タグ){ return {"値": "param =" + tag [1]}; // print param = B } – deepak

+0

")"を削除しても機能しません。アダプタ側のコードを検討する: function getFeed(タグ){ return {"値": "param =" + tag [1]}; // param = Bとtag [0] = "A"を出力します MobileFirst Swaggerでは、次のように "params" ['AB'、 'C​​D'、 'EF]のリクエストURLを見ることができます:http:あなたのJSアダプターの手順では、次のように変更してください:/ localhost:9080/mfp/api/adapters/TestAdapter/getFeed?params =%5B'AB '%2C'CD'%2C'EF '%5D – deepak

答えて

0

Javascriptアダプターの場合、送信するパラメーターを組み込むようにプロシージャーのメソッドのシグニチャーを変更する必要があります。

あなたのクライアントコードで
var resourceRequest = new WLResourceRequest("/adapters/AdapterNewGet/getFeed", WLResourceRequest.POST); 
var formParameters={"params":"['AB','CD','EF']")}; 
resourceRequest.sendFormParameters(formParameters).then(app.onSuccess, app.onFailure); 

については

にJavascriptのアダプタを変更します。あなたが `POST`が、その後、` GET`を使用している

function getFeed(arg1,arg2,arg3) { 

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

    return MFP.Server.invokeHttp(input); 
} 
関連する問題