基于Web Services建立Asp与Asp.Net之间Session数据桥的应用研究
微软Asp.net技术的出现终于解决了这个问题,可以让我们来存储session信息到web server和database或者其他域server。不错,问题解决了,我们还有必要用asp代码吗?全部扔掉?如果这样做的话就会需要很大代价去重新使用.net来重写asp。看来还是不可行。另一种比较好的解决方案就是用迭代方法来部分移植代码到新的模型胜过重写asp代码,在这个过程中如果旧的ASP代码和新的asp.net代码可以有一个共同的session状态而保持正常的工作,那么在整个生命周期中将会有益于你更好的规避风险.以下提供了几个解决方案从此略上来解决当采用经典的asp sesssion因服务器关系而造成的问题。
5 values 1 value 5 values 1 value
In-memory ASP Sessions 46 9 34 7
ASP/ASP.NET web service individually 4321 864 3397 679
ASP/ASP.NET web service grouped 711 142 990 198
ASP/ADO database individually 346 69 841 168
ASP/ADO database grouped 163 33 860 172
在其他的页面中访问这些值采用:
var skyString = Session("Sky");
设置一个关键值对;
设置一个kye-value 类型session 数据,语法和值钱的asp Session 语法很相似,采用下面的代码可以把现有的设置asp session代码替换;
SetSessionValue("Sky", "Blue");
获取 session :
var SkyString = GetSessionValue("Sky");
这种方法建议在设置比较少的情况下用
设置多个key-valus对值
这些方法的最大开销在于设置每一个key-value,然后返回给webservice,推荐用以下方法来设置(当超过3对以上的key-values)
设置session
var sessionInfo = NewSession();
sessionInfo.Add(“Sky”, "Blue");
sessionInfo.Add(“Grass”, “Green”);
SetSession(sessionInfo);
var sessionInfo = GetSession();
var skyString = sessionInfo.Item(“Sky”);
var grassString = sessionInfo.Item(“Grass”);
Java Script Example
<%@ Language="JScript" %>
var sessionInfo = NewSession();
sessionInfo.Item("Sky") = "Blue";
sessionInfo.Item("Grass") = "Green";
SetSession(sessionInfo);
var sSky = retrievedSession.Item("Sky");
var sGrass = retrievedSession.Item("Grass");
Response.Write(sGrass + "<br>");
%>
<%@ Language="VBSCRIPT" %>
Dim sessionInfo
Set sessionInfo = NewSession()
sessionInfo.Item("Sky") = "Blue"
sessionInfo.Item("Grass") = "Green"
SetSession(sessionInfo)
Set retrievedSession = GetSession()
Dim sSky
sSky = retrievedSession.Item("Sky")
Dim sGrass
sGrass = retrievedSession.Item("Grass")
Response.Write(sGrass & "<br>")
%>
public bool setSessionValue(string sessionVariable, string sessionValue)
public string getSessionValues()
public bool setSessionValues(string xmlSessionValues)
为了让asp.net web service能够来支持创建和维护sessions,要通过下面包含在每个方法中的属性,这将返回一个asp.net_
xmlHTTP.open("POST", sURL, false);
var clientCookie = "" + Request.Cookies("ASP.NET_SessionId");
xmlHTTP.setRequestHeader("cookie", "ASP.NET_SessionId=" +
clientCookie + "; path=/;");
.
.
.
Response.Cookies("ASP.NET_SessionId") = httpCookie;
字典对象转化
var dctSession = new ActiveXObject("Scripting.Dictionary");
var re = new RegExp("<SessionItem ", "g");
<script language="”Jscript”" runat="”server”" src=”\Script\ASPSessionWS.js” >
</script>
采用80端口访问web server,在脚本文件中写如下函数,用来维护session状态
function GetWebService(Function, Parameters)
{
var xmlPayload = "";
var sURL = "http://www.xxxx.com/ASPBridge/bridge.asmx" + "/" +
Function;
本文转自
高阳 51CTO博客,原文链接:http://blog.51cto.com/xiaoyinnet/196092 ,如需转载请自行联系原作者
基于Web Services建立Asp与Asp.Net之间Session数据桥的应用研究相关推荐
- 基于Spring Boot应用Apache CXF发布Web Services服务
记录:298 场景:使用Spring Boot应用Apache CXF发布Web Services服务,实现跨系统之间交互接口. 版本: JDK 1.8 Spring Boot 2.6.3 Apach ...
- VMware vSphere Web Services SDK编程指南(一)-SDK简介
vSphere Web Services SDK 简介 VMware vSphere® Web Services SDK 包含了与VMware vSphere API一起工作所需的所有组件,如 WSD ...
- 新版:Web Services面试题库和答案
新版:Web Services面试题库和答案 1.Web Service是什么? Web Service是一种标准软件系统,用于通过网络在两个设备(客户端和服务器)之间进行通信. Web Servic ...
- ONVIF协议网络摄像机(IPC)客户端程序开发(3):理解什么是Web Services
ONVIF协议网络摄像机(IPC)客户端程序开发(3):理解什么是Web Services 1. 专栏导读 本专栏第一篇文章「专栏开篇」列出了专栏的完整目录,按目录顺序阅读,有助于你的理解,专栏前面文 ...
- excel网页服务器端,Excel服务VI――用Excel Web Services创建应用程
译者:fanjy 来源:http://blogs.msdn.com/excel 发表于:2006年7月7日 Excel Services part 6: Building applications ...
- Onvif协议:理解什么是Web Services
ONVIF规范中设备管理和控制部分所定义的接口均以Web Services的形式提供.要理解什么是ONVIF,就必须先知道什么是Web Services.所以,开始介绍ONVIF之前,我单独整理了一篇 ...
- Spring MVC 4 RESTFul Web Services CRUD例子(带源码)【这才是restful,超经典】
[本系列其他教程正在陆续翻译中,点击分类:spring 4 mvc 进行查看.源码下载地址在文章末尾.] [翻译 by 明明如月 QQ 605283073] 原文地址:http://websystiq ...
- Onvif协议学习:3、了解web services
Onvif协议学习:3.了解web services 文章目录 Onvif协议学习:3.了解web services 1.远程调用 2.远程调用原理 3.Web Services的简单理解 4.Web ...
- 失物招领|基于Web的校园失物招领系统的设计与实现
作者主页:编程千纸鹤 作者简介:Java.前端.Pythone开发多年,做过高程,项目经理,架构师 主要内容:Java项目开发.毕业设计开发.面试技术整理.最新技术分享 收藏点赞不迷路 关注作者有好 ...
最新文章
- 【MySQL】MySQL的group_concat使用例子
- Windows 8 应用开发 - 本地数据存储
- [译]理解HTTP/304响应
- PHP开发一个简单的成绩录入系统
- 主席树 - 可持久化线段树
- 光学模拟 Android,基于Android平台的光学字符识别应用的设计与实现
- GO语言练习:第二个工程--模拟音乐播放器
- CSS样式(三) - div盒子
- Python中容易忽视的知识点
- 最全下载jar包的网站
- voronoi图编程构造_可视化编程真的有那么糟糕?
- 芯片领域再起风波 国内IC行业挑战来临
- Google 谷歌翻译 API
- python 3.7 安装 win32 win32com win32ras模块
- 帆软报表更新到服务器控件展示不出来_如何报表控件FineReport实现自定义附件处理...
- 页游终端服务器,页游定制高防服务器秒解封服务器
- c# .net对接企业微信小助手 接口请求时长预警
- e3是合法浮点数吗_下面四个选项中,均是合法浮点数的是()
- python json dump时,中文乱码问题
- Eclipse 2020如何创建JAVA Web项目