使用 JSON 和 Grails 使用 REST API

Consuming REST API using JSON with Grails

我正在尝试使用要求我在 JSON 中提供登录详细信息的 REST 服务:

def resp = new RestBuilder().put("https://..."){        
   contentType "application/json"
   accept "application/json"
   header "X-ESA-API-Key", "ROBOT"
   json {
      type = "STANDARD_LOGIN"
      login = "username"
      password = "password"
   }
}

这导致服务响应“不允许的方法”。

但是,使用 cURL:

$ curl --compressed \
-X POST \
-d '{"type":"STANDARD_LOGIN","login":"username","password":"password"}' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-H 'X-ESA-API-Key: ROBOT' \
'https://...

我从该服务获得了正确的响应和身份验证。

谁能告诉我我在 Grails 中做错了什么或如何调试这个问题?

区别在于PUT用于RestBuilderPOST用于curl

PUT"Method not allowed"。请改用 post()