1
JSON request
に文字列変数を渡す必要があるところで私は立ち往生しています。JSONリクエストで文字列変数を渡す際の問題を取得する
指定されたURLは次のとおりです。上記の実行
'url'
def browserCall = Java.type('package.browserCall')
* def parameter = browserCall.method(data) //returns a string
* def val = '{"data7":"6DW7926NC7KMQ","data8":'#(parameter)'}'
* json param = val
Given path 'path'
* request
"""
{
"data1":"string",
"data2":"string",
"data3":"string",
"data4":"3",
"data5":"string",
"data6":param,
"data9":"string"
}
"""
When method post
Then status 200
は、空手は* def val = '{"data7":"6DW7926NC7KMQ","data8":'#(parameter)'}'
でスキップし、私は型変換ドキュメントを踏襲し、JSON val = 'parameter'
によってJSONにdef parameter =browserCall.method(data)
パラメータを変換しようとした要求にそれを渡されたが、それは動作していません。
私はまだ間違っていると思います。助けてください
は同じ試みたが、それはまだ* DEFヴァル= '{ "DATA7" "#(パラメータ)": "6DW7926NC7KMQ"、 "DATA8"}' でスキップされます。 –
素早く頭がおかげてありがとう。私はあなたの解決策を試しましたが、「数値リテラルPAY-0GJ70918F1391232NLIVLD7Qの後にスペースがありません」というエラーが表示されます これは「#(パラメータ)」から取得したのと同じ動的文字列です。私は前に同じエラーがあったが、無知だった。 –
パラメータはJSONではありません。これはjavaコードからの文字列値です。この文字列 'Parameter'はJSONリクエストで使用する必要があります。 –