对比分析AngularJS中的$http.post与jQuery.post的区别


Posted in Javascript onFebruary 27, 2015

很多时候我们需要用ajax提交post数据,angularjs与jq类似,也有封装好的post。

但是jQuery的post明显比angularjs的要简单一些,人性化一些。

AngularJS:

$http.post('do-submit.php',myData)

.success(function(){

    // some code

});

jQuery:

$.post('do-submit.php', myData, function() {

    // some code

});

看起来没什么区别吧?可是,用angularjs的$http提交的数据,在php服务器端却无法通过$_REQUEST/$_POST获取到,而需要用:

$params = json_decode(file_get_contents('php://input'),true);

来获取。什么原因呢?

这是因为两者的post对header的处理有所不同……jQuery会把作为JSON对象的myData序列化,例如:

var myData = { a : 1, b : 2 };

// jQuery在post数据之前会把myData转换成字符串:"a=1&b=2"

而Angular不会。

解决方案是什么?

1.引入jquery,前提是目标用户不介意多加载一个几十K的脚本。(不推荐)

2.在服务器端(PHP)通过  $params = json_decode(file_get_contents('php://input'),true);   获取参数,小项目可以,大项目要一个一个改。(不推荐)

3.修改Angular的$httpProvider的默认处理:http://victorblog.com/2012/12/20/make-angularjs-http-service-behave-like-jquery-ajax/  (为了便于以后的管理,这是最好的办法)

小伙伴们是否对AngularJS中的$http.post与jQuery.post的区别有了进一步的认识了呢,希望大家读完本文能够有所得。

Javascript 相关文章推荐
ExtJS扩展 垂直tabLayout实现代码
Jun 21 Javascript
jquery select(列表)的操作(取值/赋值)
Mar 16 Javascript
基于JQUERY的多级联动代码
Jan 24 Javascript
js showModalDialog参数的使用详解
Jan 07 Javascript
通过JS来动态的修改url,实现对url的增删查改
Sep 01 Javascript
js仿支付宝填写支付密码效果实现多方框输入密码
Mar 09 Javascript
Bootstrap轮播图的使用和理解4
Dec 14 Javascript
mongoose更新对象的两种方法示例比较
Dec 19 Javascript
如何理解Vue的v-model指令的使用方法
Jul 19 Javascript
Element实现表格分页数据选择+全选所有完善批量操作
Jun 07 Javascript
JavaScript 实现轮播图特效的示例
Nov 05 Javascript
JavaScript中的几种继承方法示例
Dec 06 Javascript
JavaScript中Function详解
Feb 27 #Javascript
JS实现图片产生波纹一样flash效果的方法
Feb 27 #Javascript
js实现鼠标触发图片抖动效果的方法
Feb 27 #Javascript
javascript实现当前页导航激活的方法
Feb 27 #Javascript
jquery 根据name名获取元素的value值
Feb 27 #Javascript
jQuery使用元素属性attr赋值详解
Feb 27 #Javascript
jquery实现公告翻滚效果
Feb 27 #Javascript
You might like
如何对PHP程序中的常见漏洞进行攻击
2006/10/09 PHP
PHP中的gzcompress、gzdeflate、gzencode函数详解
2014/07/29 PHP
php使用ffmpeg向视频中添加文字字幕的实现方法
2016/05/23 PHP
不常用但很实用的PHP预定义变量分析
2019/06/25 PHP
10个基于浏览器的JavaScript调试工具分享
2013/02/07 Javascript
js随机颜色代码的多种实现方式
2013/04/23 Javascript
JS限制Textarea文本域字符个数的具体实现
2013/08/02 Javascript
基于jQuery+JSON的省市二三级联动效果
2015/06/05 Javascript
jquery-mobile基础属性与用法详解
2016/11/23 Javascript
canvas绘制七巧板
2017/02/03 Javascript
layui问题之模拟select点击事件的实例讲解
2018/08/15 Javascript
Electron autoUpdater实现Windows安装包自动更新的方法
2018/12/24 Javascript
基于Node.js的大文件分片上传示例
2019/06/19 Javascript
ant design的table组件实现全选功能以及自定义分页
2020/11/17 Javascript
[03:16]DOTA2完美大师赛小组赛精彩集锦
2017/11/22 DOTA
pyqt4教程之messagebox使用示例分享
2014/03/07 Python
python实现带错误处理功能的远程文件读取方法
2015/04/29 Python
python操作mongodb根据_id查询数据的实现方法
2015/05/20 Python
Python实现遍历目录的方法【测试可用】
2017/03/22 Python
Python标准模块--ContextManager上下文管理器的具体用法
2017/11/27 Python
如何利用pygame实现简单的五子棋游戏
2019/12/29 Python
selenium中get_cookies()和add_cookie()的用法详解
2020/01/06 Python
结合 CSS3 transition transform 实现简单的跑马灯效果的示例
2018/02/07 HTML / CSS
x-ua-compatible content=”IE=7, IE=9″意思理解
2013/07/22 HTML / CSS
html5中嵌入视频自动播放的问题解决
2020/05/25 HTML / CSS
服务行业个人求职的自我评价
2013/12/12 职场文书
经济管理专业自荐信
2013/12/30 职场文书
给交警的表扬信
2014/01/12 职场文书
个人求职信范例
2014/01/29 职场文书
少年闰土教学反思
2014/02/22 职场文书
协议书范本
2014/04/23 职场文书
小学校长竞聘演讲稿
2014/05/16 职场文书
2015年元旦促销方案书
2014/12/09 职场文书
求职简历自我评价怎么写
2015/03/10 职场文书
详解Java七大阻塞队列之SynchronousQueue
2021/09/04 Java/Android
JS的深浅复制详细
2021/10/16 Javascript