通过js获取cookie的实例及简单分析
今天碰到一个在firefox下swfupload 上传时session不一致问题
在一个项目遇到多文件上传时,firefox下,服务器端的session获取不一致问题。
解决办法:
解决办法:将sessionID传过去!
js里:
url='/fileupload/main/fileuploadnew?'+document.cookie.split("; ")[0]
document.cookie.split("; ")[0]为sessionid,为什么这么写,看下文。
java后台:
String sessionId = request.getParameter("sessionid");
随之而来的问题是如何通过javascript获取cookie里面的一个值。 那么我们先来看看cookie到底长什么样子呢? 直接在浏览器地址栏输入: javascript:alert(document.cookie); 回车。(这行代码的意思是,让浏览器执行javascript语句: alert(document.cookie);) 结果是:uin=webryan; sessionid=10293123834; pgv_send=1; cur_page=index 这个样子。 注意:1.开始没有空格,2.分号后又空格 3.最后没有分号。那么我们获取cookie的方法就比较明确了。。
一种是用document.cookie.split(“; “)的方式把字符串分割成几个段,然后遍历整个数组。 把每个数组单元等号左边的和name对比是否相等,相等则取等号右边的值。
function getCookie(name){
var arr = document.cookie.split("; ");
for(var i=0,len=arr.length;i<len;i++){
var item = arr[i].split("=");
if(item[0]==name){
return item[1];
}
}
return"";
}
function getCookie(name){
var arr = document.cookie.split("; ");
for(var i=0,len=arr.length;i<len;i++){
var item = arr[i].split("=");
if(item[0]==name){
return item[1];
}
}
return"";
}
function getCookie(name){
var arr = document.cookie.split("; ");
for(var i=0,len=arr.length;i<len;i++){
var item = arr[i].split("=");
if(item[0]==name){
return item[1];
}
}
return "";
}
第二种就是直接在字符串中搜索关键字。由于分号有空格,加上防止出现搜索cookie name为“str”的value是,有一个test_str的cookie名称。这里我们先进行一次过滤。 然后在找到 ;str的位置,这样就不会出问题。具体情况如下
function getCookie(name){
var value="";
var cookie = ";"+document.cookie.replace(/;\s+/g,";")+";"
var pos = cookie.indexOf(";"+name+"=");
if(pos>-1){
var start = cookie.indexOf("=",pos);
var end = cookie.indexOf(";",start);
value = unescape(cookie.substring(start+1,end));
}
return value;
}
function getCookie(name){
var value="";
var cookie = ";"+document.cookie.replace(/;\s+/g,";")+";"
var pos = cookie.indexOf(";"+name+"=");
if(pos>-1){
var start = cookie.indexOf("=",pos);
var end = cookie.indexOf(";",start);
value = unescape(cookie.substring(start+1,end));
}
return value;
}
function getCookie(name){
var value="";
var cookie = ";"+document.cookie.replace(/;\s+/g,";")+";"
var pos = cookie.indexOf(";"+name+"=");
if(pos>-1){
var start = cookie.indexOf("=",pos);
var end = cookie.indexOf(";",start);
value = unescape(cookie.substring(start+1,end));
}
return value;
}
通过js获取cookie的实例及简单分析的更多相关文章
- 转 通过js获取cookie的实例及简单分析
今天review新人写的javascript代码的时候发现了很多的问题.这里以function getCookie(name){}为例. 其中比较典型的一个问题就是如何通过javascript获取co ...
- 简单利用XSS获取Cookie信息实例演示
简单利用XSS获取Cookie信息实例演示 首先要找到一个有XXS的站,这里就不整什么大站了,谷歌一下inurl:'Product.asp?BigClassName',搜出来的命中率也比较高.随便 ...
- js获取cookie
js获取cookie 之前用jQuery.cookie来获取cookie,虽然简单,但是项目上又多引用了一个插件,总觉得不太好,下面是我封装的js原生获取cookie的函数. function get ...
- node.js获取cookie
node.js 获取cookie var Cookies ={}; if (req.headers.cookie != null) { req.headers.cookie.split(';').fo ...
- js获取cookie数据并发送给服务端
js获取cookie数据并发送给服务端 <!DOCTYPE html> <html lang="en"> <head> <meta cha ...
- js获取cookie中存储的值
最近看了试卷题目发现自己会的十分的匮乏, 第一题就把自己难住了,知道有这个东西,但是实际上没有操作过. ========================================= cookie ...
- js获取cookie提取用户名asp.net+html
JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的. 而cookie是运行在客户端的,所以可以用JS来设置cookie. 假设有这样一 ...
- js封装Cookie操作 js 获取cookie js 设置cookie js 删除cookie
每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code var CookieUtil = { // 设置cookie set : functi ...
- 用js获取cookie
//获取cookiefunction cookie_email(cookie_name){ var cookiestr = document.cookie; if (cookiestr.length ...
随机推荐
- iphone 浏览器自动解析数字为号码解决方法
iphone 浏览器自动解析数字为号码解决方法 www.MyException.Cn 网友分享于:2015-10-09 浏览:0次 iphone 浏览器自动解析数字为号码解决办法 在工作中遇到 ...
- OAuth2.0授权
一.什么是OAuth2.0官方网站:http://oauth.net/ http://oauth.net/2/ 权威定义:OAuth is An open protocol to allow secu ...
- Codeforces Round #172 (Div. 2)
A. Word Capitalization 模拟. B. Nearest Fraction 枚举. C. Rectangle Puzzle 求出两个矩形的点,套简单多边形的面积交板子. D. Max ...
- iOS、swift、React Native学习常用的社区、论坛
<!----iOS> <!----Swift>*IOS开发常用社区:http://code4app.com/ *IOS开发常用社区:http://www.cocoachina. ...
- 2016HUAS_ACM暑假集训3G - 还是畅通工程
最小生成树,题目简单.套的Prim模板,其他的题目比较有意义. Sample Input 3 //村庄个数1 2 1 ...
- go异常处理
go的异常处理通过defer,panic,recover这3个流程来达到(defer是关键字,后2者是函数) (1)异常的捕获通常放在函数最末,也就是defer里面 (2)panci抛出异常 (3)r ...
- 040. asp.netWeb中TreeView控件绑定XML文件
xml文件格式: <?xml version="1.0" encoding="utf-8" ?> <sitemap title="进 ...
- iOS10 权限配置
升到iOS10之后,需要设置权限的有: 麦克风权限:Privacy - Microphone Usage Description 是否允许此App使用你的麦克风? 相机权限: Privacy - Ca ...
- jq 获取元素的宽度时,如何取得小数部分
<!DOCTYPE html> <html> <head> <title></title> <meta name="arti ...
- 【maven】之配置开发,测试,正式环境pom.xml文件
在进行web程序开发,如果项目组没有使用自动化发布工具(jenkins + maven + svn + tomcat ),我们一般会使用maven的热部署来完成发布,在部署的过程中我们开发,测试,生产 ...