我在JAVA(JAX_RX)中有一个简单的REST服务。我必须将一些乌尔都语/阿拉伯语作品返回给客户(这是我的案例的网页)。在客户端,我得到utf-8编码的字符串。我必须显示原始字符串。
下面是包含我必须返回的示例查询的类信息。 **班级**
mail.Body = template;
当我从前端Message processed successfully for Trigger helloWorld.
Message processed successfully for Logger logIncoming.
Message processed successfully for Assignment assignSecondaryTracking.
**Error processing message in Notification sendMail.**
Message processed successfully for Reply getMail.
查询时,我得到此输出@Path("/book")
public class Book {
@GET
@Path("/query")
public Response getParams(
@QueryParam("url") String url,
@QueryParam("text") String text) throws IOException
{
if ( url != null)
{
return Response.status(200).entity("Given URL: " + url).build();
}
else if ( text != null )
{
return Response.status(200).entity ( new String( "گدھا" ) ).build();
}
return Response.status(200).entity("Invalid format !!!").build();
}
}
。这是编码utf-8。如何获取原始文本http://localhost:8080/WSdemo/book/query?text=%DA%86%DB%8C%D8%A6%D8%B1
答案 0 :(得分:0)
尝试将端点声明如下,指定所需的字符编码:
@GET
@Path("/query")
@Produces("text/plain;charset=UTF-8")
public Response getParams(..) {..}
或者我猜你可以在Response
上设置编码return Response.status(200)
.header("Content-Type", "text/plain;charset=UTF-8")
.entity(text)
.build();