Angularjs $http服务的两个request安全问题
今天为了hybrid app和后端restful服务的安全认证问题,又翻了一下$http的文档,$http服务文档页面两个安全问题是json和XSRF,JSON那个比较好理解,就不补充什么了,说说XSRF和CORS(跨域HTTP请求)的访问凭证问题
1、XSRF问题又叫CSRF问题跨站请求伪造,一般来讲实在cookie放一个Token,当提交post请求时取出token,把Token放到post的请求data或者header里面,一般Ajax请求会放在header里面,这样比较容易横向设置,这个token传到后端,再由后端取出来和后端session里面的数据做对比验证。因为AngularJS的$http发送请求,其数据都是传object或者自己组object,不像jQuery,直接取整个form的所有数据,而像有些框架的CSRF Token,hacking直接绑定model好像不太nice,所以设置XSRF Cookie Name的方式,$http会自己直接从Cookie里面去取这个token,放到header里面,这样就不用每次发送post请求时,自己去想法设法拿那个值了。
2、跨域HTTP请求(CORS)的访问控制问题,目前的Ajax XMLHTTPRequest标准已经允许一定条件下的跨域请求,hybrid的页面等资源都在apk里面,所以其数据请求肯定是跨域的,这个问题我说起来有点话长,我就不详述了,angularjs文档给了个链接:https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS#Requests_with_credentials ,目前一些比较激进的HTML5或者js书籍里面也有跨域请求的介绍,比如《html5程序设计》
Angularjs $http服务的两个request安全问题的更多相关文章
- aJax提交——服务端不能用request存储数据,session存数据客户端可以接收到
aJax提交与普通提交是两种迥异的提交方式,这两种提交方式决定了客户端与服务端交互时存储.传输数据的方式也不同. aJax提交,客户端的请求数据存储在data中,服务端用request.getPara ...
- Linux 服务管理两种方式service和systemctl
Linux 服务管理两种方式service和systemctl 1.service命令 service命令其实是去/etc/init.d目录下,去执行相关程序 # service命令启动redis脚本 ...
- linux安装mysql服务分两种安装方法:
linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有十多M,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点是安装速度 ...
- Android四大组件之服务的两种启动方式详解
Service简单概述 Service(服务):是一个没有用户界面.可以在后台长期运行且可以执行操作的应用组件.服务可由其他应用组件启动(如:Activity.另一个service).此外,组件可以绑 ...
- highcharts .net导出服务 和 两种导出方式
highcharts 的Net导出服务 GitHub上整理的https://github.com/imclem/Highcharts-export-module-asp.net 引用两个程序集 sh ...
- 重启osd服务失败:Start request repeated too quickly
背景 OS:Ubuntu 16.04 修改了osd的一些配置,修改后,需要重启osd服务才能生效.第一次重启后,配置立刻生效.再改了一些配置,重启osd服务后,配置却不再生效了.ps命令查看进程,发现 ...
- Dynamics CRM 非声明验证方式下连接组织服务的两种方式的性能测试
今天看了勇哥的博文"http://luoyong0201.blog.163.com/blog/static/1129305201510153391392/",又认识到了一种新的连接 ...
- 三,memcached服务的两种访问方式
memcached有两种访问方式,分别是使用telnet访问和使用php访问. 1,使用telnet访问memcacehd 在命令提示行输入, (1)连接memcached指令:telnet 127. ...
- httpd 服务的两个节点的HA
实验目的是:实现两个节点的http和nfs服务的HA集群. 实现条件:准备两个节点.node1,node2作为HA1,HA2提供集群服务.在node1和node2分别按照httpd服务.挂载nfs服务 ...
随机推荐
- Oracle EBS SLA 详解
SLA概述 SLA :子分类账(Subledger Accounting),这个在R12中大力宣扬的内容,我们通常的认为总账就是对Journal的汇总,但是在实际的操作中我们会发现,对于Sub sys ...
- SpriteBuilder实现2D精灵光影明暗反射效果(二)
使用SpriteBuilder新建一个项目,将默认MainScene.ccb中的内容统统删掉,此时场景应该是一片漆黑. 将官网中的2张图片以及我自己做的2张图片全部拖拽到其文件视图中去: 其中加_n后 ...
- 如何优化MySQL insert性能
对于一些数据量较大的系统,面临的问题除了是查询效率低下,还有一个很重要的问题就是插入时间长.我们就有一个业务系统,每天的数据导入需要4-5个钟.这种费时的操作其实是很有风险的,假设程序出了问题,想重跑 ...
- 使用C++的string实现高精度加法运算
对于超大数字的运算,用long long int仍然不能解决,这时候就需要考虑通过模拟运算和数组存储来实现高精度运算. 本文讨论借助C++的string来实现高精度的运算. 首先输入的量直接存储为st ...
- pig的limit无效(返回所有记录)sample有效
pig中,limit可以取样少部分数据,但有很多问题,比如数据不能少于10条,否则返回全部. 今天又遇到另一个问题: group后的数据,limit无效:也就是group后的数据,不能用limit,估 ...
- 扩展GDAL,支持CNSDTF格式(一)
扩展GDAL,支持CNSDTF格式(一) 一. 简介 本文主要根据<中华人民共和国国家标准GB/T17798-2007--地理空间数据交换格式(Geospatialdata tra ...
- C语言之统计输入字符数量
这个程序市委了统计所输入的数字或者英文字母的数字的数量,当然稍加改动便可以统计特殊字符的个数,在此不再冗叙. 代码如下: #include <iostream> using namespa ...
- Linux下触摸屏驱动程序分析
[摘要: 本文以linux3.5--Exynos4412仄台,剖析触摸屏驱动焦点内容.Linux下触摸屏驱动(以ft5x06_ts为例)须要懂得以下学问: 1. I2C协定 2. Exynos4412 ...
- 看看腾讯是怎么做产品设计分析的 - 腾讯QQ音乐业务产品规划
- 常用Map实现类对比
翻译人员: 铁锚 翻译时间: 2013年12月12日 原文链接: HashMap vs. TreeMap vs. Hashtable vs. LinkedHashMap Map 是最常用的数据结构之一 ...