zoukankan      html  css  js  c++  java
  • Cookieless Session In WebService

    protected void Button1_Click(object sender, EventArgs e)
    {
        localhost.MyDemo MyService;
    
        // try to get the proxy from Session state
        MyService = Session["MyService"] as localhost.MyDemo;
    
        if (MyService == null)
        {
            // create the proxy
            MyService = new localhost.MyDemo();
     
            // create a container for the SessionID cookie
            MyService.CookieContainer = new CookieContainer();
     
            // store it in Session for next usage
            Session["MyService"] = MyService;
        }
    
        // call the Web Service function
        Label1.Text += MyService.HelloWorld() + "<br />";
    }
    

      

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.SessionState;
    
    namespace TestWebServiceTradition.WS
    {
        public class OurSessionIDManager : ISessionIDManager
        {
            public OurSessionIDManager() { }
    
            private SessionIDManager sid = new SessionIDManager();
    
            public string CreateSessionID(HttpContext context)
            {
                return sid.CreateSessionID(context);
            }
            public string GetSessionID(HttpContext context)
            {
                return sid.GetSessionID(context);
            }
            public void Initialize()
            {
                sid.Initialize();
            }
            public bool InitializeRequest(HttpContext context, bool suppressAutoDetectRedirect, out bool supportSessionIDReissue)
            {
                bool redirectCookie = false;
                if ((context.Request.RawUrl.ToLower().IndexOf(".asmx") > -1))
                    redirectCookie = true; 
                return sid.InitializeRequest(context, redirectCookie, out supportSessionIDReissue);
            }
            public void RemoveSessionID(HttpContext context)
            {
                sid.RemoveSessionID(context);
            }
            public void SaveSessionID(HttpContext context, string id, out bool redirected, out bool cookieAdded)
            {
                sid.SaveSessionID(context, id, out redirected, out cookieAdded);
            }
            public bool Validate(string id)
            {
                return sid.Validate(id);
            }
        }
    }
    

      

    <configuration>
       
    <system.web>
       
    <webServices>
           
    <protocols>
               
    <addname="HttpGet"/>
               
    <addname="HttpPost"/>
           
    </protocols>
       
    </webServices>
       
    </system.web>
    </configuration>
  • 相关阅读:
    windows安全实验
    ping 命令的禁止 以及密码的攻破
    网络基础
    html 中间件
    js php BurpSuite v2.1
    网页标签,PHPstudy
    说说text_line_orientation算子的巧妙应用
    说说C#进行数字图像处理的方法
    微信张小龙产品30条
    说说几个常用的阈值分割算子
  • 原文地址:https://www.cnblogs.com/wucg/p/2425184.html
Copyright © 2011-2022 走看看