当客户端是Windows / Console应用程序时,webservice如何维护会话?

时间:2010-11-11 15:55:16

标签: c# web-services

当客户端是Windows / Console应用程序时,webservice如何维护会话?

3 个答案:

答案 0 :(得分:2)

使用cookies。

发送HTTP请求时,请务必添加CookieContainer。 (假设您正在使用HttpWebRequest

答案 1 :(得分:2)

在幕后,C#WebClient正在存储由Web服务提供给它的cookie。

答案 2 :(得分:0)

如果有人有兴趣,可以使用以下示例代码。

class Program
{
    static void Main(string[] args)
    {
        CookieContainer session = new CookieContainer();

        HttpWebRequest httpSomeRequest = (HttpWebRequest)WebRequest.Create("http://localhost:8080/someURL");
        httpSomeRequest.CookieContainer = session;
        httpSomeRequest.GetResponse();

        HttpWebRequest httpSomeOtherRequest  = (HttpWebRequest)WebRequest.Create("http://localhost:8080/someOtherURL");
        httpSomeOtherRequest.CookieContainer = session;
        httpSomeOtherRequest.GetResponse();
    }
}

我们只需要确保每个HttpWebRequest制作使用相同的CookieContainer实例。