如何在 groovy 中进行休息 PUT/POST

Lee*_*aul 3 rest groovy

如何从 Groovy 代码内部执行 HTTP PUT/POST,而无需导入任何库(如果可能的话)?我知道 Groovy 添加到 java.net.URL 类中有一个简单的 getText() 方法,可以在不添加任何依赖项的情况下使用该方法。有没有办法以同样的方式进行 Rest PUT?

jal*_*aba 5

您可以使用与HttpURLConnection使用 java 类似的方式来执行此操作:

def url = new URL('http://your_rest_endpoint')
def http = url.openConnection()
http.setDoOutput(true)
http.setRequestMethod('PUT')
http.setRequestProperty('User-agent', 'groovy script')

def out = new OutputStreamWriter(http.outputStream)
out.write('data')
out.close()

http.inputStream // read server response from it
Run Code Online (Sandbox Code Playgroud)

  • 在这里要强调一点,示例中的“data”是 POST 或 PUT 主体,通常是 JSON 格式。 (2认同)