我正在使用MediaType中的“resteasy客户端”库发送POST请求。申请表格编码类型。
示例代码:
String serviceUrl = "URL";
ConnectRequest connectRequest = new ConnectRequest();
connectRequest.setUsername("");
connectRequest.setPassword("");
connectRequest.setScope("bearer");
connectRequest.setGrant_type("");
Entity<ConnectRequest> entity = Entity.entity(connectRequest,
MediaType.APPLICATION_FORM_URLENCODED_TYPE);
ResteasyClient client = new ResteasyClientBuilder().build();
ResteasyWebTarget target = client.target(serviceUrl);
Response response = target.request().post(entity);
System.out.println("RESP : "+response.toString());
Maven依赖项
<properties>
<java.version>1.7</java.version>
<resteasy.version>3.0.4.Final</resteasy.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-client</artifactId>
<version>${resteasy.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jackson-provider</artifactId>
<version>${resteasy.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-servlet-initializer</artifactId>
<version>${resteasy.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>${resteasy.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>jaxrs-api</artifactId>
<version>${resteasy.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxb-provider</artifactId>
<version>${resteasy.version}</version>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-multipart-provider</artifactId>
<version>${resteasy.version}</version>
</dependency>
</dependencies>
连接工作正常,并在使用POSTMAN请求时发送正确的响应
但是在请求使用程序后,它会创建错误
回应:
javax.ws.rs.处理异常:找不到内容类型应用程序的编写器/x-www-form-urlencoded类型
请帮忙。。。
我创建了一组可以导入的阅读器/编写器,用于处理表单编码到java对象的自动绑定:https://github.com/exabrial/form-binding这比创建一个表单实例要容易一点。
您不能使用POJO发送应用程序/x-www-form-urlencoded
。您需要使用javax。ws。rs.core。形成
课程。
Form connectRequest = new Form()
.param("username", "...")
.param("password", "...")
.param("client_id")
...;
您还可以使用Entity.form(连接请求)
,这是一种速记,因此您不必使用MediaType.APPLICATION_FORM_URLENCODED_TYPE
。
另外,解析响应时也可以看到这个。您不需要依赖项。您已经有了RESTEasy的依赖项。
这是我使用jax rs客户端执行请求的代码: .... 我收到错误: javax。ws。rs.ProcessingException:RESTEASY004655:无法调用请求:javax。ws。rs.ProcessingException:RESTEASY003215:找不到内容类型应用程序/x-www-form-urlencoded-type:javax的编写器。ws。rs.core。类型 这
我试图访问这个REST API,它接受三个参数:,,我在AngularJS中这样做: 但我总是这样: 对象{data:“{”result:“false”},状态:200,配置:Object,状态文本:“OK”,标题:function} 或者 {"data":"{\"结果\":\"false\"}","状态": 200,"配置":{"方法":"POST","transformRequest":[nu
@PostMapping public UserResponse createUser(@RequestBody UserRequest userDetail){ 这是我收到的错误代码 } 我尝试了很多不同的方法仍然没有得到解决方案这是来自邮递员的图片来自邮递员的图片
我以前有ElasticSearch 5.2,刚刚升级到6.0。 我试图创建一个索引模板以下指南在这里,但得到了错误 我的问题是
问题内容: 我有一个宁静的服务(发布),它消耗(application / json)并产生(application / json)。此服务的单个参数是带注释的java对象。 我正在使用org.jboss.resteasy.client.ClientRequest将请求发送到服务。但是,我在客户端得到了这个异常和异常: 找不到内容类型应用程序/ json类型的编写器。 这是否意味着我缺少一些库ja
我将请求作为内容类型发送给我的控制器类请求:application/json和application/x-www-form-urlencoded格式,它应该允许这两种类型。 但是当我使用请求类型作为应用程序/x-www-form-urlencoded时,它正在工作,但当我使用请求应用程序/json时,该代码不工作,它给出400响应状态。如何解决这个问题。