Angularjs中,$http以post在消息体中传递参数,需要做以下修改,以确保消息体传递参数的正确性。

一、在声明应用的时候进行设置:

 1 var httpPost = function ($httpProvider) {2     /*******************************************3     说明:$http的post提交时,纠正消息体4             参考:http://victorblog.com/2012/12/20/make-angularjs-http-service-behave-like-jquery-ajax/5     ********************************************/6     // Use x-www-form-urlencoded Content-Type7     $httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8';8     /*9      * The workhorse; converts an object to x-www-form-urlencoded serialization.
10      * @param {Object} obj
11      * @return {String}
12      */
13     var param = function (obj) {
14         var query = '', name, value, fullSubName, subName, subValue, innerObj, i;
15
16         for (name in obj) {
17             value = obj[name];
18
19             if (value instanceof Array) {
20                 for (i = 0; i < value.length; ++i) {
21                     subValue = value[i];
22                     fullSubName = name + '[' + i + ']';
23                     innerObj = {};
24                     innerObj[fullSubName] = subValue;
25                     query += param(innerObj) + '&';
26                 }
27             } else if (value instanceof Object) {
28                 for (subName in value) {
29                     subValue = value[subName];
30                     fullSubName = name + '[' + subName + ']';
31                     innerObj = {};
32                     innerObj[fullSubName] = subValue;
33                     query += param(innerObj) + '&';
34                 }
35             } else if (value !== undefined && value !== null)
36                 query += encodeURIComponent(name) + '=' + encodeURIComponent(value) + '&';
37         }
38
39         return query.length ? query.substr(0, query.length - 1) : query;
40     };
41
42     // Override $http service's default transformRequest
43     $httpProvider.defaults.transformRequest = [
44         function (data) {
45             return angular.isObject(data) && String(data) !== '[object File]' ? param(data) : data;
46         }
47     ];
48 };
49
50 var ngApp = angular.module('wtApp', ['ngCookies'], httpPost);

二、调用$http post

1 $http({
2     method: 'POST',
3     url: 'GetData.ashx',
4     params: { id: '1002' },//params作为url的参数
5     data: { keyName: 'qubernet' }//作为消息体参数
6 }, function (data) {
7
8 });

Angularjs中$http以post请求通过消息体传递参数相关推荐

  1. 请求体的方式传参_Angularjs中$http以post请求通过消息体传递参数的实现方法

    本文实例讲述了Angularjs中$http以post请求通过消息体传递参数的方法.分享给大家供大家参考,具体如下: Angularjs中,$http以post在消息体中传递参数,需要做以下修改,以确 ...

  2. postbody传参_java 测试post请求 在body里面传递参数怎么设置,怎么接收

    展开全部 package wzh.Http;import java.io.BufferedReader;import java.io.IOException;import java.io.InputS ...

  3. post带参的请求与post不带参数的请求

    post不带参数的请求 [{"description": "这是一个post不带参的请求","request": {"uri&qu ...

  4. GA/T1400文档请求失败消息返回提

    GA/T1400 文档请求失败消息返回指的是当你在请求 GA/T1400 标准文档时,服务器返回的消息告诉你请求失败.这可能是由于请求的文档不存在或者因为服务器遇到了问题而无法响应请求.你应该检查你的 ...

  5. Java开发微信公众号(四)---微信服务器post消息体的接收及消息的处理

    在前几节文章中我们讲述了微信公众号环境的搭建.如何接入微信公众平台.以及微信服务器请求消息,响应消息,事件消息以及工具处理类的封装:接下来我们重点说一下-微信服务器post消息体的接收及消息的处理,这 ...

  6. java 微信api框架_Java架构学习(五十二)使用框架开发微信微信框架介绍整合微信开发框架WxJava使用微信返回消息模板接口使用WxJava框架发送模板消息http协议参数转义知识...

    一.微信框架介绍 1.access_token是公众号的全局唯一调用接口的凭证,它两个小时更新一次. 获取access_token方法: https请求方式: GET https://api.weix ...

  7. Java微信公众平台开发(二)--微信服务器post消息体的接收

    转自: http://www.cuiyongzhi.com/post/39.html 在上一篇的文章中我们详细讲述了如何将我们的应用服务器和微信腾讯服务器之间的对接操作,最后接入成功,不知道你有没有发 ...

  8. C#微信公众号开发系列教程三(消息体签名及加解密)

    http://www.cnblogs.com/zskbll/p/4139039.html C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试) C ...

  9. angularjs方法当做参数_AngularJS $http post 传递参数数据的方法

    在cordova开发的时候使用到了$http的post方法,传递的参数服务端怎么都接收不到,搜索了下,发现使用AngularJS通过POST传递参数还是需要设置一些东西才可以! 1.不能直接使用par ...

  10. 网易im 服务器消息格式,机器人消息体模板说明-IM即时通讯-网易云信开发文档...

    目的 描述机器人返回消息体,包含控件元素.布局(简版).数据及特定事件. 消息体模板说明 template元素 元素定义了整个消息体. 属性 值 描述 id id 元素的唯一id params 参数串 ...

最新文章

  1. 不盲目依赖人工智能,海信帮欧尚开了近 300 家无人便利店
  2. 我们越来越浮躁的心靠什么去滋润
  3. Python+Opencv实现无参数、全自动的Canny算法
  4. How do I enable core dumps for everybody
  5. 【XML】我所知道的XML
  6. 数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器...
  7. 31muduo_net库源码分析(七)
  8. linux nfs 多个ip,linux基础之NFS
  9. java 舆情分析_基于Java实现网络舆情分析系统研究与实现.doc
  10. Foxpro 简体转繁体的一种方式(代码)
  11. 计算机的acpi高级电源选项配置,ACPI电源管理模式详解
  12. DeBUG|实例化servlet类xxxx异常
  13. 机器学习算法----KNN K邻近 (K值的选择) (学习笔记)
  14. Mac上使用IE浏览器
  15. 智能识别收货地址 javascript
  16. 系统安全及应用(操作)
  17. Linux下使用vim 编写c语言程序
  18. java 手电筒_《SystemUI》限制低电量打开手电筒
  19. Python内置函数——getattr
  20. Mysql 数据库(一)

热门文章

  1. Spring boot中的Http压缩配置
  2. 搭建FileZilla
  3. JDK自带观察者的使用
  4. Struts2表单验证的xml配置
  5. 用最简单的道理说服别人,提升自己
  6. 10.高性能MySQL --- 复制
  7. 3.Linux 高性能服务器编程 --- TCP 协议详解
  8. 26.MySQL 锁
  9. 20. nginx 服务器的邮件服务
  10. 小马虎g用计算机计算题目,四年级奥数期末复习题二