Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在groovy脚本中返回类成员字符串_Groovy - Fatal编程技术网

如何在groovy脚本中返回类成员字符串

如何在groovy脚本中返回类成员字符串,groovy,Groovy,我有以下代码snipet class **ResultToken** { String token String expiration } // HTTP post request to retrive active token // Return : ResultToken object ResultToken getToken(){ ResultToken token http.request(POST) { ... response.success = { r

我有以下代码snipet

class **ResultToken** {
 String token
 String expiration
}


// HTTP post request to retrive active token
// Return : ResultToken object
ResultToken getToken(){
ResultToken token

http.request(POST) {

    ...

    response.success = { resp, json ->
    token = new ResultToken(token: json["access_token"].toString(), 
expiration: json["expires_in"].toString())

    }
}    
token
}

def tokenValue =getToken().token
return tokenValue
异常错误: groovy.lang.MissingPropertyException:没有此类属性:类的http:Script259 在Script259.getToken(Script259.groovy:21) 在Script259.run(Script259.groovy:41)

有什么想法吗


通过这种方式,您可以定义不返回任何有用信息的处理程序

它应该是:

ResultToken getToken(){
  ResultToken token

  http.request(POST) {
    ....
    response.success = { resp, json ->
      token = new ResultToken(token: json.access_token, expiration: json.expires_in)
    }
  }

  token
}

我尝试了你的建议,但没有效果,我得到了一个缺少的属性异常,因为我无法访问json.access\u令牌。如果作为返回,我使用return json[“access_token”],那么我会得到正确的值,但是如果我通过ReultToken类传递它,它就不起作用。我已经更新了我的初始帖子,请查看注释信息,然后使用
json[“access\u token”]
而不是
json。在构造函数内部使用
access\u token
。我尝试过,但这样做表示它无法将对象解析为字符串,因为json[“…”]似乎不会作为stringadd
toString()
返回给它,此外,您还可以停用
@CompileStatic
异常,因为脚本中甚至没有定义
http