java - Angular 客户端向 Java 服务器发送 POST 请求的参数

标签 java angularjs arrays post

我有 Angular 应用程序和 Java 服务器。

我需要使用由字符串数组和字符串字段组成的 JSON 对象发送 POST 请求。

我正在使用 Angularjs $resource 和 Java javax.ws.rs。

我最近的尝试如下:

客户:

    var messages = $resource('resources/messages/getmessages', {}, {
        update: { method: 'POST', url: 'resources/messages/updatemessages' }
    });
    //...
    var _args = {   'msgIdList': ['1', '2', '3'],
                    'action': 'makeSmth'   };

    return messages.update(_args).$promise.then(
        function (data) {
            //...
        },
        function (error) {
            //...
        }
    )

服务器:

    @POST   
    @Path("updatemessages")
    @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
    @Produces(MediaType.APPLICATION_JSON +"; charset=UTF-8")
    public Response updateMessages( @FormParam("msgIdList") List<String> msgIdList,
                                    @DefaultValue("") @FormParam("action") String action,
                                    @CookieParam("rgsid") String c_sid, 
                                    @Context HttpServletRequest httpservletreq) {
//...
}

问题是我遇到了 415 不支持的媒体类型 错误,并且不知道下一步该怎么做。我已经尝试了很多方法,但也许我从一开始就错了,我不能以这种方式传递参数?

如有任何帮助,我们将不胜感激,谢谢!

最佳答案

你可以在你的 Angular 尝试这个,也许它会有所帮助。

            var sendPost = $http({
                method: "post",
                url:"JAVA_SERVER_SERVICE_URL",
                data: {
                    msgIdList: 'your_value',
                    action: 'your_value'
                },
                headers: { 'Content-Type': 'application/json' }
            });

关于java - Angular 客户端向 Java 服务器发送 POST 请求的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39077475/

相关文章:

java - 从需要登录的网页获取数据 Java

java - 为什么我的 JSP scriptlet 无法从 pageContext 检索 int 并将其转换为本地作用域的原始变量?

java - 正则表达式中的 Unicode 脚本

javascript - 为什么分离 JavaScript 和 HTML 是一种好的做法?

arrays - VBA如何检查数组是否包含范围内的字符串

javascript - 如何将提示中的多个输入添加到数组中?

java - 日历客户端忽略 ical4j 生成的 .ics 文件中的 FREEBUSY 属性

html - 带有侧导航栏的 Ng-show

ios - Angular 指令在 iPhone 4s 上无法正常工作

javascript - 如何通过按下按钮获得数组的平均值?