我目前正在开发一个 AngularJS 项目,我正在使用内容类型“application/x-www-form-urlencoded;”调用一些休息服务。
在服务器端,我在 2.0 版中使用 Jersey。这是我的 Maven 依赖项。
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet-core</artifactId>
<version>2.0</version>
</dependency>
在 Chrome 和 IE7 上一切正常。我的问题是 Firefox 在内容类型中神秘地添加了“charset=UTF-8”。
我做了一些测试,如果我使用 POSTMAN 并在内容类型中设置“application/x-www-form-urlencoded; charset=UTF-8”,Jersey 在所有 FormParam 参数中都为 null
这是我在java中的方法的标题
@POST
@Produces(MediaType.APPLICATION_JSON)
@Path("movements/")
public Response movements(
@FormParam("COMPTE_NO") String COMPTE_NO,
@FormParam("COMPTE_BIDULE") String COMPTE_BIDULE,
@FormParam("COMPTE_MACHIN") String COMPTE_MACHIN,
我试过这个标题
@POST
@Produces(MediaType.APPLICATION_JSON)
@Path("movements/")
@Consumes({MediaType.APPLICATION_FORM_URLENCODED + ";charset=UTF-8",
MediaType.APPLICATION_FORM_URLENCODED + "; charset=UTF-8",
MediaType.APPLICATION_FORM_URLENCODED})
public Response movements(
@FormParam("COMPTE_NO") String COMPTE_NO,
@FormParam("COMPTE_BIDULE") String COMPTE_BIDULE,
@FormParam("COMPTE_MACHIN") String COMPTE_MACHIN,
我遇到了完全相同的问题。你有想法吗 ?提前致谢。