Groovy Rest Client:解析'application / json

时间:2018-11-06 10:43:14

标签: groovy rest-client jenkins-groovy

我需要使用一个简单的REST API,该API返回“ true”或“ false”(不带大括号)。

当我尝试使用Jenkins的Gradle文件中的Groovy Rest Client调用此API时,出现以下异常。

解析“ application / json; charset = UTF-8”响应时出错 groovy.json.JsonException:JSON有效负载应以大括号“ {”或大括号“ [”开头。 相反,在第1行,第1列,

中找到了“ true”

注意:此代码运行良好

  1. 从命令行调用时
  2. 从Chrome插件“邮递员”调用时
  3. 从我的机器中的eclipse调用时

代码:

response1 = client.get  (
                            path: 'updatetenantState'
                            ,query : [tenantId :tenant_id, inActive:true]
                            ,requestContentType: ContentType.JSON
                            ,headers: [Accept: 'application/json']
                        )

我对此感到困惑。 预先感谢。

1 个答案:

答案 0 :(得分:0)

不知道您使用的是哪个库,但是错误

  

JSON有效载荷应以大括号“ {”或方括号“ [”

开始

是使用JsonSlurperClassic解析字符串'true'

的结果
import groovy.json.*
new JsonSlurperClassic().parseText('true')

但是JsonSlurper正常工作

import groovy.json.*
new JsonSlurper().parseText('true')

所以您只需要更改响应解析的方式