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前端和后台的数据交换,后台取不到值对应方案相关推荐

  1. ASP.NET中使用JSON方便实现前台与后台的数据交换

    一.前台向后台请求数据 在页面加载时,有时需要对一些表单进行初始化,此时可以利用JQuery的 get 函数向后台发起异步请求: /初始化函数 function initSettings() {$.g ...

  2. Angular.js前端简单微服务架构设计

    1.使用angular脚手架进行多项目工作区搭建* 搭建后的项目到project层,后续项目需自主配置 ng new my-workspace --create-application false 2 ...

  3. ajax请求后台表格数据,商品后台表格数据的展现方式

    表格数据的展现方式 编辑页面--> CodeNamePrice 返回值类型的说明 属性信息: total/rows/属性元素{ "total":2000, "row ...

  4. java过滤ios表情,JS前端去掉emoji表情和Java后台处理emoji表情方法

    莫非定律 : 任何事情都没表面看去来那么简单! emoji表情在项目中使用,因为其特殊的编码格式,经常导致在网络传输.编解码.以及数据入库中带来一些问题! 下面简单介绍使用Js和java处理移除emo ...

  5. JS前端去掉emoji表情和Java后台处理emoji表情方法

    莫非定律 : 任何事情都没表面看去来那么简单! emoji表情在项目中使用,因为其特殊的编码格式,经常导致在网络传输.编解码.以及数据入库中带来一些问题! 下面简单介绍使用Js和java处理移除emo ...

  6. 前端传输map集合数据到后台

    js: function createUrl() {var map = {};$("#channelTable").bootstrapTable('getSelections'). ...

  7. php angular使用,如何使用angular.js PHP从mysql显示数据?

    您好,您可以查看以下示例代码 你的HTML页面: AngularJs Post Example: DevZone.co.in #dv1{ border:1px solid #DBDCE9; margi ...

  8. ajax向后台请求数据,后台接收到数据并进行了处理,但前台就是调用error方法...

    如果你的前台页面书写正确的情况下,并且运行情况和本文题目类似,那不妨试试这个: 在ajax方法中加上:async:false,让ajax同步执行. 因为ajax默认是异步的,至于为什么会不执行succ ...

  9. angular.js实现数据双向通信的原理

    angular.js实现数据双向通信的原理 angular的核心特性有:MVVM.模块化.依赖注入.自动化双向数据绑定.语义标签等. 1.AngularJS的scopes对象 AngularJS的sc ...

最新文章

  1. pandas语法乱、API多?你需要整理一下!
  2. 最古老的100个.com域名
  3. MATLAB实战系列(四十)-小波变换MATLAB图像融合
  4. Spring Boot 多模块项目实践(附打包方法)
  5. 计算机科学基础第二版答案,浙江大学计算机科学基础课后习题参考答案new-PXY.doc...
  6. 专利:结构化大数据通信协议
  7. MySQL字段拼接Concat
  8. bzoj1048(记忆化搜索)
  9. Arcgis创建SDE_Geometry、SDO_Geometry的区别
  10. ios 简单的计时器游戏 NSUserDefaults NSDate NSTimer
  11. python怎么安装xlutils_Python3安装xlutils
  12. SQL Server 何时将“脏页”回写到硬盘
  13. 16位LED恒流源芯片TC5020A,32*128点阵屏驱动函数
  14. C语言:将两个按值有序排列的非空线性链表合并为一个按值有序的线性链表算法
  15. android灰度发布平台,安卓版微信灰度发布购物直播功能 小程序直播上线公域流量入口...
  16. WinCE系统USB功能定制
  17. amd插帧技术如何开启_玩家真谛:通过AMD的 专属福利“插帧/补帧”技术了解播放器原理...
  18. esp分区引导修复失败_UEFI引导损坏启动不了怎么修复教程
  19. 用生成对抗网络给雪人上色,探索人工智能时代的美学
  20. Android判断当前系统语言

热门文章

  1. 『Spring.NET+NHibernate+泛型』框架搭建之DAO(三)★
  2. ATS (apache traffic server) http_ui 设置与使用
  3. 【学习笔记】【C语言】结构体
  4. C++四种cast操作符
  5. 多客户端异步通讯框架
  6. 边缘检测(5)Canny算法
  7. 事件委托 EventHandler 。
  8. mysql代表单个字符_mysql字符编码以及字符序
  9. 鱼骨图分析法实际案例_让你头脑更精明的十种思考法:鱼骨图
  10. html 如何去除浮动,CSS浮动? 如何清除浮动?