use*_*310 2 java api rest groovy
我正在运行一个休息POST请求,我在编译时收到此错误:
Caught: java.lang.IllegalArgumentException: No encoder found for request content type */*
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
@Grab(group='org.codehaus.groovy.modules.http-builder', module='http-builder', version='0.7' )
import groovyx.net.http.RESTClient
def client = new RESTClient( 'http://localhost' )
def resp = client.post( path : '/services/adi/validateadimeta/fromfile',body : [ file:'foo' ] )
Run Code Online (Sandbox Code Playgroud)
我不确定它是否响应可能是响应的重编码问题?该*/*有我担心,它甚至没有进行连接.当我在命令行上将其作为CURL命令运行时,它可以正常工作.
file是此帖子调用所需的唯一参数.
谢谢
由于我们从未在RESTClient实例上设置默认内容类型或在此请求中传递contentType参数,因此RESTClient会将Accept:/放入请求标头中,并根据响应内容类型标头中给出的内容解析响应.
修改,post()调用如下:
@Grab('org.codehaus.groovy.modules.http-builder:'http-builder:0.7' )
import groovyx.net.http.RESTClient
import static groovyx.net.http.ContentType.*
def client = new RESTClient( 'http://localhost' )
def resp = client.post(
path: '/services/adi/validateadimeta/fromfile',
body : [ file : 'foo' ],
requestContentType : JSON
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8449 次 |
| 最近记录: |