如何在角js应用程序中访问java servlet会话属性

时间:2014-10-08 04:29:16

标签: java javascript angularjs session servlets

如何在angular js应用程序中访问servlet会话属性,在示例中,ProductServlet在会话属性中设置产品,如何在AngularJs应用程序中访问此变量,这相当于

public class ProductServlet extends HttpServlet {
.....
...
    List<Products> products = getProducts();// Return the List of the products
    if (session.getAttribute("userName") == null) {
            session.setAttribute("products", products);
        }
......
......
}

我的Angular JS控制器

 function ProductController($scope, $http)
    {
      $scope.user = {};

      $scope. GetProducts = function() 
      {
        $http({
          method: 'POST',
          url: 'http://localhost:8080/Products',
          headers: {'Content-Type': 'application/json'},
          data:  $scope.user
        }).success(function (data) 
          {
            $scope.status=data;
          });
      };
    }

HTML

               

<body>
    <form ng-controller="ProductController" ng-submit="GetProducts()">
    <legend>Get Productsr</legend>


      <button class="btn btn-primary">Get Products</button>
      <br/>
      <label>DISPLAY the List of products</label>
    </form>
  </body>

</html>

1 个答案:

答案 0 :(得分:4)

您不能只从浏览器中运行的Javascript访问服务器端数据(例如属性)。

您必须创建一些Web服务来公开此数据(例如,向JSON GET请求)。

如果您这样做,请确保没有人未经授权可以访问此信息。