2015-09-08 3 views
0

Я пытаюсь отправить данные на сервер с помощью $ http.post(). Я написал код, но ничего не показывает. Я просто хочу отправить строковую переменную и распечатать ее с java-страницы.Как отправить данные на сервер из angularjs

<body ng-controller="HelloCtrl">  
<script type="text/javascript"> 
    var app=angular.module("MyApp",[]); 
    app.controller("HelloCtrl", function($scope, $http) { 
     $scope.name="Subhajyoti";   
     $scope.showName= function(){ 
      $http.post('insertEntry',$scope.name) 
      .success(function(data){ 
       alert(data); 
      }) 
      .error(function(data){ 
       alert("Error"); 
      }) 
     } 
    }); 
</script> 
</body> 

Это моя ява код страницы ..

@Controller 
public class Rules { 
@RequestMapping(value="insertEntry", method=RequestMethod.POST) 
public @ResponseBody String insertEntry(@RequestParam String name){ 
    String val=name; 
    System.out.println(val); 
    JSONObject json = new JSONObject(); 
    String message = "Success"; 

    json.put("message", message); 
    return json.toString(); 
} 

}

Я взаимодействующий angularjs с Spring MVC. пожалуйста, помогите мне с примером. Я новичок в этом.

+0

забудьте положить URL не только insertEntry – z0r0

+0

Что angularJS версию вы используете? «.success» и '.error' устарели. – Hereblur

+0

, пожалуйста, помогите мне с кодировкой java-страницы. – Subho

ответ

0

Попробуйте

@RequestMapping(value="/insertEntry") 

И

$http.post('/insertEntry') 

Проверить один tutorial

0

Вам нужно это:

<html> 
<head> 
    <script type="text/javascript"> 
     var app=angular.module("MyApp",[]); 
     app.controller("HelloCtrl", function($scope, $http) { 
      $scope.name="Subhajyoti";   
       $http.post('/insertEntry', {name:$scope.name}). 
      then(function(response) { 
      // this callback will be called asynchronously 
      // when the response is available 
      }, function(response) { 
      // called asynchronously if an error occurs 
      // or server returns response with an error status. 
      }); 
     }); 
    </script> 
</head> 
<body > 
<div data-ng-app="MyApp" 
     ng-controller="HelloCtrl"> 

    </body> 
</html> 

и изменить свой Controller класс, как показано ниже:

@Controller 
public class Rules { 
@RequestMapping(value="insertEntry", method=RequestMethod.POST) 
public @ResponseBody String insertEntry(@RequestBody String name){ 
    String val=name; 
    System.out.println(val); 
    JSONObject json = new JSONObject(); 
    String message = "Success"; 

    json.put("message", message); 
    return "".toString(); 
    } 
} 
+0

Он не показывал никаких о/р. – Subho

+0

Не уверен, как вы называете '$ scope.showName' раньше, попробуйте теперь, как указано в ответе! – Arpit

+0

Я просто сделал то же самое, что и сказать @Arpit. – Subho

0

это код, на котором я звоню на сервер. var app = angular.module ('MyApp', []);

app.controller("JsonCtrl", function($scope, $http) { 

     var dataObj = { 
       "ruleId" : "1234", 
       "version" : "R1234", 
       "name" : "Usage crossing 50MB", 
       "description" : "Find usage more than 50mb", 
       "active" : true, 
       "created_by" : "Rahul", 
       "create_date" : "2015-08-18", 
       "modified_date" : "2015-08-22", 
       "modified_by" : "Subho" 
      }; 

     var response = $http.post('PostService', dataObj); 
     response.success(function(data, status, headers, config) { 
      $scope.responseData = data; 
     }); 
     response.error(function(data, status, headers, config) { 
      alert("Exception details: " + JSON.stringify({ 
       data : data 
      })); 
     }); 

    }); 

Код страницы сервера:

@Controller 
    public class JsonServer { 
@RequestMapping(value = "/PostService", method = RequestMethod.POST) 
public @ResponseBody String PostService(@RequestBody RuleModel m) { 

    StringBuilder reponseData = new StringBuilder(); 
    reponseData.append("RuleID: "+m.getRuleId()+" "); 
    reponseData.append("version: "+m.getVersion()+" "); 
    reponseData.append("name: "+m.getName()+" "); 
    reponseData.append("description: "+m.getDescription()+" "); 
    reponseData.append("created_by: "+m.getCreated_by()+" "); 
    reponseData.append("create_date: "+m.getCreate_date()+" "); 
    reponseData.append("modified_date: "+m.getModified_date()+" "); 
    reponseData.append("modified_by: "+m.getModified_by()+" "); 
    reponseData.append("category_name: "+m.getCategory_name()+" "); 

    return reponseData.toString(); 
} 
} 
Смежные вопросы