angular.js前端和后台的数据交换,后台取不到值对应方案
生活随笔
收集整理的這篇文章主要介紹了
angular.js前端和后台的数据交换,后台取不到值对应方案
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
環境:angular.js+sastruts+apache-tomcat
最近在學習前端的一個設計工具angular.js,數據雙向綁定,其特點就不作多述,學習的過程中有一個問題就是前端向后臺傳值時,后臺的Action無法取得。
研究了半天,使用了以下的解決方案:使用jQuery的方式和數據格式來進行傳遞。
app.js
angular.module('mainApp', []).config([ '$httpProvider', function($httpProvider) {$httpProvider.defaults.transformRequest=function(data){if(data==undefined) {return data;}return $.param(data);};$httpProvider.defaults.headers.post['Content-Type']='application/x-www-form-urlencoded;charset=UTF-8'; } ]); controller.js // 方式①$resource Test01Service.save({paramJson : angular.toJson(test01Form) }, function(obj) {... });// 方式②$http $http.post('../../test/test01/save',{ paramJson:angular.toJson(test01Form) });service.js
// 方式①$resource angular.module('test01Services', [ 'ngResource' ]).factory('Test01Service', [ '$resource', function($resource) {return $resource('../test/test01/save'); } ]); 這樣后臺Form中paramJson屬性就可以取到值了。(前端和后端的數據交換這里使用Json文字列)另外,如果數據量太大(>2M)的話,post會出錯,后臺也會取不到數據。
具體的原因可參看參照文檔中的描述。
參考資料:
http://my.oschina.net/buwei/blog/191640
http://www.java123.net/v/983363.html
http://blog.sina.com.cn/s/blog_7853b58f01016pez.html
感謝網絡上熱心的前輩技術分享!本文如有不正,請指出。
以上。
轉載于:https://my.oschina.net/wangbiglei/blog/325055
總結
以上是生活随笔為你收集整理的angular.js前端和后台的数据交换,后台取不到值对应方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 异步请求HTTP
- 下一篇: for循环中一个不容小觑的问题