2017-06-09 11 views
0

GET要求の応答jsonを別の要求の入力として使用したいとします。そのために私が受け取る応答は正しいjson形式でなければなりません。私はこれを行うにはHttpBuilderを使用しています。httpbuilderを使用してgroovyで完全なjson文字列としてhttp get responseを取得する方法

HTTPBuilder http = new HTTPBuilder(urlParam, ContentType.JSON); 
    http.headers.Accept = ContentType.JSON; 
    http.parser[ContentType.JSON] = http.parser.'application/json' 

    return http.request(GET) {    
     response.success = {resp, json -> 
      return json.toString() 
     } 

私がjson.toString()を返すとき、それはうまく形成されたjsonではありません。どのように達成するのですか?私が私のget URLをクリックすると、私はjson全体を参照して上記のコードを使用していません。あなたの助けに感謝します。 groovy.json.JsonOutput

答えて

1

HTTPBuilder http = new HTTPBuilder('http://date.jsontest.com/', ContentType.JSON); 
http.headers.Accept = ContentType.JSON 
http.parser[ContentType.JSON] = http.parser.'application/json' 
http.request(Method.GET) { 
    response.success = { resp, json -> 
     println json.toString()   // Not valid JSON 
     println JsonOutput.toJson(json) // Valid JSON 
     println JsonOutput.prettyPrint(JsonOutput.toJson(json)) 
    } 
} 

結果:

{time=09:41:21 PM, milliseconds_since_epoch=1497303681991, date=06-12-2017} 
{"time":"09:41:21 PM","milliseconds_since_epoch":1497303681991,"date":"06-12-2017"} 
{ 
    "time": "09:41:21 PM", 
    "milliseconds_since_epoch": 1497303681991, 
    "date": "06-12-2017" 
} 
関連する問題