js访问url和cookie
function QueryString() {
var data = [];
this.Read = function() {
var aPairs, aTmp;
var queryString = new String(window.location.search);
queryString = queryString.substr(1, queryString.length); //remove "?"
aPairs = queryString.split("&");
for (var i = 0; i < aPairs.length; i++) {
aTmp = aPairs[i].split("=");
data[aTmp[0]] = aTmp[1];
}
}
this.GetValue = function(key) {
return data[key];
}
this.SetValue = function(key, value) {
if (value == null)
delete data[key];
else
data[key] = value;
}
this.ToString = function() {
var queryString = new String("");
for (var key in data) {
if (queryString != "")
queryString += "&"
if (data[key])
queryString += key + "=" + data[key];
}
if (queryString.length > 0)
return "?" + queryString;
else
return queryString;
}
this.Clear = function() {
delete data;
data = [];
}
}
function Cookies() {
var cookieData = [];
this.Read = function() {
var pairs = new String(window.document.cookie).split(";");
var tmp, cookieName, keyName;
for (var i = 0; i < pairs.length; i++) {
tmp = pairs[i].split("=");
if (tmp.length == 3) {
cookieName = new String(tmp[0]);
cookieName = cookieName.replace(" ", "");
if (cookieData[cookieName] == null)
cookieData[cookieName] = [];
cookieData[cookieName][tmp[1]] = unescape(tmp[1]);
} else //length = 2
{
keyName = tmp[0];
keyName = keyName.replace(" ", "");
if (keyName.substring(0, 12) != "ASPSESSIONID") {
if (cookieData[""] == null)
cookieData[""] = [];
cookieData[""][keyName] = unescape(tmp[1]);
}
}
}
}
this.GetValue = function(cookie, key) {
if (cookieData[cookie] != null)
return cookieData[cookie][key];
else
return null;
}
this.SetValue = function(cookie, key, value) {
if (cookieData[cookie] == null)
cookieData[cookie] = [];
cookieData[cookie][key] = value;
}
this.Write = function() {
var toWrite;
var thisCookie;
var expireDateKill = new Date();
var expireDate = new Date();
expireDate.setYear(expireDate.getFullYear() + 10);
expireDateKill.setYear(expireDateKill.getFullYear() - 10);
var pairs = new String(window.document.cookie).split(";");
var tmp, cookieName, keyName;
for (var i = 0; i < pairs.length; i++) {
tmp = pairs[i].split("=");
if (tmp.length == 3) {
window.document.cookie = tmp[0] + "=" + tmp[1] + "='';expires=" + expireDateKill.toGMTString();
} else {
keyName = tmp[0];
keyName = keyName.replace(" ", "");
if (keyName.substring(0, 12) != "ASPSESSIONID")
window.document.cookie = keyName + "='';expires=" + expireDateKill.toGMTString();
}
}
for (var cookie in cookieData) {
toWrite = "";
thisCookie = cookieData[cookie];
for (var key in thisCookie) {
if (thisCookie[key] != null) {
if (cookie == "")
toWrite = key + "=" + thisCookie[key];
else
toWrite = cookie + "=" + key + "=" + escape(thisCookie[key]);
toWrite += "; expires=" + expireDate.toGMTString();
window.document.cookie = toWrite;
}
}
}
}
}
js访问url和cookie的更多相关文章
- JS访问或设置cookie的方法+跨域调用方法
无意中从163网站获取的JS访问或设置cookie的方法,Log到日志上以防遗忘 //COOKIE功能检查function fCheckCookie(){ if(!navigator.cooki ...
- android webview带cookie访问url
问题描述在原生和h5混合开发的时候会遇到这么一个问题,用webview加载某个url时,你只是app登录了账号,但是网页却没有,所有会禁止访问此url,webview就会显示白屏.所以要访问此url, ...
- HttpHelps类,用来实现Http访问,Post或者Get方式的,直接访问,带Cookie的,带证书的等方式,可以设置代理
原文地址:http://blog.csdn.net/cdefg198/article/details/8315438 万能框架:http://www.sufeinet.com/forum.php?mo ...
- js 第四章 cookie的操作
js 第四章 cookie的操作 一.学习要点 掌握cookie的简单应用 二. js 第四章 cookie的操作 了解cookie 什么是cookie? cookie 是存储于访问者的计算机中的变量 ...
- jquery + node 通过 CORS 实现跨域访问,支持cookie和自定义header
跨域有多种方式,现在的情况看来还是CORS更适合一些,有很多优点,比如浏览器正式支持.支持post.可以控制跨域访问的网站等. 我们来看看node如何实现cors方式的跨域.在网上找到了一些代码,考过 ...
- 使用nutz框架,找不到入口函数,访问Url报404
案例 今天在跟着nutz框架教程去配置demo时,发现访问URL找不到入口函数,出现了Search mapping for path=/user/count : NOT Action match 异常 ...
- js javascript 获取url,获得当前页面的url,静态html文件js读取url参数
获得当前页面的url window.location.href 静态html文件js读取url参数 location.search; //获取url中"?"符后的字串 下边为转载的 ...
- js获取URL中的参数
js获取URL中的一些参数的意思 location对象 含有当前URL的信息. 属性 href 整个URL字符串. protocol 含有URL第一部分的字符串,如http: host 包含有URL中 ...
- 使用Node.JS访问Hyperledger Fabric的gRPC服务
在即将正式发布的Hyperledger Fabric SDK 1.0中,Hyperledger Fabric通过gRPC提供服务接口以取代现有的REST API.本文介绍了如何使用Node.JS访问H ...
随机推荐
- Calendar 对象的使用实例
1.Calendar demo例子 JavaCalendar 类时间操作,示范代码. public class CalendarDemo { private static SimpleDateForm ...
- [SQLite] SQLite学习手册(数据库和事务)
转载地址:http://www.cnblogs.com/stephen-liu74/archive/2012/02/18/2322575.html 一.Attach数据库: ATTACH DATABA ...
- Redis设计与实现读书笔记——简单动态字符串
前言 项目里用到了redis数据结构,不想只是简单的调用api,这里对我的读书笔记做一下记录.原文地址: http://www.redisbook.com/en/latest/internal-dat ...
- longest-substring-with-at-least-k-repeating-characters
https://leetcode.com/problems/longest-substring-with-at-least-k-repeating-characters/ public class S ...
- ADB用法
作为android开发人员,adb是常用的工具之一.具体怎么使用了. 1. 安装完ADB后(ADB的安装请参考<Android开发平台搭建及配置.doc>),用电脑USB连接机器,然后使用 ...
- Android中操作SQLite数据库
我又回到了安卓的学习当中,忙来忙去终于忙的差不多有时间做自己的事情了,这感觉实在是太棒了!!本来想写android的控件以及他们的监视器的,但是我查了查android的手册,基本上都能查到,但是查有些 ...
- 微信小程序自定义数据分析试水
昨晚收到小程序自定义分析的内测邀请,简单试用了一下.说明挺长的,大概是这个意思: 一.定义一系列事件,对其进行统计 事件可以对页面中的这些事件进行追踪 click enterPage leavePag ...
- win7取消任务栏预览并显示文件名
开始--运行--regedit--回车,然后注册表就打开了,之后开始找到如下的位置,新增2个项 HKEY_CURRENT_USER\Software\Microsoft\Windows\Current ...
- Cocos Studio is EOL'd
Cocos Studio is EOL'd Cocos Studio has been EOL'd as of April 2016. There will be no more releases o ...
- (LeetCode 153)Find Minimum in Rotated Sorted Array
Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 migh ...