如何正确使用RESTeasy方法将application / x-www-form-urlencoded正确地作为UTF-8使用?

时间:2012-09-19 08:30:06

标签: java encoding utf-8 resteasy

我正在使用

curl --data-binary "content=abcdeöäüabcde" http://myserver.com/application/api -H "Content-Type: application/x-www-form-urlencoded; encoding=utf-8"

POST表格数据发送到我的网络服务器。

在服务器端,我想解码内容:

@POST
@Path("/api")
@Consumes("application/x-www-form-urlencoded")
public void createNote(@FormParam("content") String content){
    System.out.println(content);
}

结果为abcde???abcde

有谁知道我怎么能告诉这个方法将表单参数用作UTF-8?

2 个答案:

答案 0 :(得分:0)

尝试:

byte[] encoded = content.getBytes("UTF-8");

答案 1 :(得分:0)

似乎cURL根本无法在POST请求中处理UTF-8编码的字符串。将字符串转换为latin1解决了我的问题。