Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.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
Java 内容类型为“的JAX-RS读取实体”*&引用;_Java_Rest_Jersey_Jax Rs_Content Type - Fatal编程技术网

Java 内容类型为“的JAX-RS读取实体”*&引用;

Java 内容类型为“的JAX-RS读取实体”*&引用;,java,rest,jersey,jax-rs,content-type,Java,Rest,Jersey,Jax Rs,Content Type,我使用Jax-RS向服务器发出请求,服务器只返回一个单词字符串,并将该响应读入一个字符串变量。问题是我不知道如何使用响应,因为它的内容类型是*;charset=UTF-8(我用邮递员验证了这一点)。Jax-RS很难解析这种头。这是我的密码: MultivaluedMap<String, String> formData = new MultivaluedHashMap<String, String>(); formData.add("username", username

我使用Jax-RS向服务器发出请求,服务器只返回一个单词字符串,并将该响应读入一个字符串变量。问题是我不知道如何使用响应,因为它的内容类型是
*;charset=UTF-8
(我用邮递员验证了这一点)。Jax-RS很难解析这种头。这是我的密码:

MultivaluedMap<String, String> formData = new MultivaluedHashMap<String, String>();
formData.add("username", username);
formData.add("target", "10");
Response response = target.request().accept(MediaType.APPLICATION_JSON_TYPE).post(Entity.form(formData));
String responseString = response.readEntity(String.class);

我如何让Jax-RS正确读取这种内容类型

我认为没有任何方法可以让Jersey/Jax-RS正确地读取这种内容类型。对于具有Jax-RS不喜欢的内容类型的任何类型的响应,一个解决方案就是简单地删除头部,并(如果需要)添加您自己的更适合响应的内容类型头部。在尝试读取响应实体之前执行此操作。这解决了我的问题:

response.getHeaders().remove("Content-Type");
response.getHeaders().add("Content-Type", "text/plain");
String responseString = response.readEntity(String.class);

我认为没有任何方法可以让Jersey/Jax-RS正确地读取这种内容类型。对于具有Jax-RS不喜欢的内容类型的任何类型的响应,一个解决方案就是简单地删除头部,并(如果需要)添加您自己的更适合响应的内容类型头部。在尝试读取响应实体之前执行此操作。这解决了我的问题:

response.getHeaders().remove("Content-Type");
response.getHeaders().add("Content-Type", "text/plain");
String responseString = response.readEntity(String.class);