【问题标题】:HTTP Status 406 – Not Acceptable in spring MVC and Angularjs [duplicate]HTTP 状态 406 – Spring MVC 和 Angularjs 中不可接受 [重复]
【发布时间】:2019-05-05 15:41:55
【问题描述】:

HTTP 状态 406 – 不可接受 根据请求中收到的主动协商标头字段,目标资源没有用户代理可以接受的当前表示,并且服务器不愿意提供默认表示。

控制器代码

@RequestMapping(value="/welcomes", method = RequestMethod.GET, produces="application/json")
    public @ResponseBody List<UserBean> welcome(@ModelAttribute UserBean userBean, HttpServletResponse response)
    {
        List<UserBean> usernames=new ArrayList<UserBean>();
        usernames = retrievedataservice.findAllUsers(userBean);
        System.out.println(usernames.size());
        return usernames;
    }

角度js代码

   <script>
    var app = angular.module('myApp', []);
    app.controller('UserController', function($scope, $http, $location){
        $scope.usernames=[];
            var url = $location.absUrl() + "welcomes";
            $http.get(url).then(function (response) 
            {
                $scope.usernames = response.records;
            },function error(response) 
            {
                $scope.postResultMessage = "Error with status: " +  response.statusText;
            });
    });
    </script>
<table border="1" width="50%" height="50%"> 
    <tr><th>user_name</th><th>phone</th><th>email</th></tr>
     <tr data-ng-repeat="user in usernames">
     <td>{{user.username}}</td>
      <td>{{user.phone}}</td>
       <td>{{user.email}}</td>
       </tr>   
   </table> 

如何将数据从 spring 控制器发送到 angular js 控制器?

【问题讨论】:

    标签: angularjs spring http spring-mvc http-status-code-406


    【解决方案1】:

    尝试更改方法签名,如下所示。

    @RequestMapping(value="/welcomes", method = RequestMethod.GET,produces={"application/json"})
        public @ResponseBody List<UserBean> welcome(UserBean userBean, HttpServletResponse response)
    

    请注意,我删除了 @ModelAttribute 并更改了产品。

    还要确保您的类路径中有 jackson 或任何其他 json 库。

    如果没有,则在 pom.xml 中添加以下内容

    <!-- add jackson to support restful API, otherwise the API will return 406 error -->
        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>1.9.13</version>
        </dependency>
    

    参考this thread

    【讨论】:

      猜你喜欢
      • 2019-04-30
      • 2018-07-22
      • 2019-12-15
      • 2013-04-26
      • 2018-05-31
      • 1970-01-01
      • 2014-02-09
      • 1970-01-01
      相关资源
      最近更新 更多