angular学习笔记(二十二)-$http.post
基本语法:
$http.post('url',{},{}).success(function(data,status,headers,config){
}).error(function(data,status,headers,config){
})
$http.post接受三个参数:
1. url: 请求的路径
2. 请求发送的数据: json对象 {name:'code_bunny'}
3. 请求配置的参数: json对象 {params: {id:5}} 这样得到的实际路径就是url?id=5
$http.post返回的对象有两个回调方法:
1. success: 请求成功的回调
2. error: 请求失败的回调
这两个方法都有四个参数:
①data: 返回的数据(或错误)
②status: 响应的状态码
③headers: 这样一个函数,具体是什么暂时不详

function (name) {
if (!headersObj) headersObj = parseHeaders(headers);
if (name) {
return headersObj[lowercase(name)] || null;
}
return headersObj;
}

④congfig: 请求的配置对象
{
method: "GET",
url: "/api/user",
params: {id:5}
}
下面看实例:
将请求的数据对象的name属性的值再返回,放入span标签中
html:
<!DOCTYPE html>
<html ng-app = 'HttpGet'>
<head>
<title>18.2 $http.post方法</title>
<meta charset="utf-8">
<script src="angular.js"></script>
<script src="script.js"></script>
</head>
<body>
<div ng-controller = "dataController">
<span>{{data}}</span>
</div>
</body>
</html>
js:
var httpGet = angular.module('HttpGet',[]);
httpGet.factory('getData',function($http,$q){
return function(){
var defer = $q.defer();
$http.post('/api/user',{name:'code_bunny'}).success(function(data,status,headers,congfig){
defer.resolve(data);
}).error(function(data,status,headers,congfig){
defer.reject(data);
});
return defer.promise
}
});
httpGet.controller('dataController',function($scope,getData){
$scope.data = getData()
});
后端node代码:
var express = require('express');
var app = express();
app.use(express.bodyParser());
app.use(express.static(__dirname+''));
app.post('/api/user',function(req,res){
res.send(req.body.name)
});
app.listen(3000);
完成代码地址:https://github.com/OOP-Code-Bunny/angular/tree/master/OREILLY/18.2%20%24http.post
angular学习笔记(二十二)-$http.post的更多相关文章
- angular学习笔记(二十八-附2)-$http,$resource中的promise对象
下面这种promise的用法,我从第一篇$http笔记到$resource笔记中,一直都有用到: HttpREST.factory('cardResource',function($resource) ...
- angular学习笔记(二十九)-$q服务
angular中的$q是用来处理异步的(主要当然是http交互啦~). $q采用的是promise式的异步编程.什么是promise异步编程呢? 异步编程最重要的核心就是回调,因为有回调函数,所以才构 ...
- angular学习笔记(二十八-附1)-$resource中的资源的方法
通过$resource获取到的资源,或者是通过$resource实例化的资源,资源本身就拥有了一些方法,$save,$delete,$remove,可以直接调用来保存该资源: 比如有一个$resour ...
- angular学习笔记(二十八)-$http(6)-使用ngResource模块构建RESTful架构
ngResource模块是angular专门为RESTful架构而设计的一个模块,它提供了'$resource'模块,$resource模块是基于$http的一个封装.下面来看看它的详细用法 1.引入 ...
- 监听器(web基础学习笔记二十二)
一.监听器 监听器是一个专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象,当被监视的对象发生情况时,立即采取相应的行动.监听器其实就是一个实现特定接口的普通java程序,这个程序专门 ...
- angular学习笔记(二十六)-$http(4)-设置请求超时
本篇主要讲解$http(config)的config中的timeout项: $http({ timeout: number }) 数值,从发出请求开始计算,等待的毫秒数,超过这个数还没有响应,则返回错 ...
- angular学习笔记(二十五)-$http(3)-转换请求和响应格式
本篇主要讲解$http(config)的config中的tranformRequest项和transformResponse项 1. transformRequest: $http({ transfo ...
- angular学习笔记(二十四)-$http(2)-设置http请求头
1. angular默认的请求头: 其中,Accept 和 X-Requested-With是$http自带的默认配置 Accept:application/json,text/plain ...
- angular学习笔记(二十)-表单验证
本篇主要介绍angular中的表单验证: 表单验证主要有以下一些内容: 1. required指令: 相当于html5的required属性,验证不能为空 2. ng-maxlength属性: 验证内 ...
随机推荐
- PHP高级教程-文件
PHP 文件处理 fopen() 函数用于在 PHP 中打开文件. 打开文件 fopen() 函数用于在 PHP 中打开文件. 此函数的第一个参数含有要打开的文件的名称,第二个参数规定了使用哪种模式来 ...
- Hibernate(十)HQL查询二
一.数据库的emp名和dept表 建立持久化类和配置文件,可以用MyEclipse直接生成 持久化类 package entity; import java.util.Date; public cla ...
- word2vec模型cbow与skip-gram的比较
cbow和skip-gram都是在word2vec中用于将文本进行向量表示的实现方法,具体的算法实现细节可以去看word2vec的原理介绍文章.我们这里大体讲下两者的区别,尤其注意在使用当中的不同特点 ...
- Java 基础【12】 日期类型
java api中日期类型的继承关系 java.lang.Object --java.util.Date --java.sql.Date --java.sql.Time --java.sql.Time ...
- JS模拟list
/* * List 大小可变数组 */ function List() { this.list = new Array(); }; /** * 将指定的元素添加到此列表的尾部. * @param ob ...
- 类的专有方法(__repr__)
# -*- coding: utf-8 -*- #python 27 #xiaodeng #http://blog.csdn.net/yyt8yyt8/article/details/7030416 ...
- 140730暑期培训.txt
1.大数加减法 思路分析: 1.将数据当做字符串输入(gets(s)) 2.将字符型转换为整型,逆着存 char? int i=0,j ...
- WPF基础学习第一天
格式 1.XAML格式: <Button x:Name="btnClick" Content="按钮" HorizontalAlignment=" ...
- [转载]ubuntu发热问题解决
原文地址:ubuntu发热问题解决作者:raosea 没事装了个ubuntu12.04玩玩. 用wubi安装,很省事的 .完了以后启动了系统,界面蛮好看.可是不久令人费心的事情出来了. 我发现本本的右 ...
- firefox 前端开发插件
http://blog.csdn.net/xjinza/article/details/6856249