以编程方式维护两次asp.net调用之间的会话信息?
我不确定我的解释是否足够清楚,能让你们理解,但我会努力的 我的问题是: 我们有一个外部站点,我们公司的用户通过提供相应的用户名和密码连接到该站点。外部站点是一个ASP.NET网站。我们希望将此网站集成到我们的内部网门户中,以便用户无需输入他们的UN/Pwd即可登录到该网站。由于目标网站没有提供SSO,我们正在模拟登录的POST请求 到目前为止还不错 我们现在需要在初始登录完成后在另一个页面上执行操作。我们也可以模拟相应的POST请求。但问题是,由于我们在最初的POST请求中没有维护任何会话信息,因此它总是重定向到登录屏幕 有没有办法在以编程方式完成的多个调用之间维护ASP.NET会话信息?我们能否以编程方式创建ASP.NET会话id cookie,然后将其与初始请求一起传递 或者这根本不可能 如有任何意见,我们将不胜感激 谢谢你的帮助以编程方式维护两次asp.net调用之间的会话信息?,asp.net,cookies,session-state,Asp.net,Cookies,Session State,我不确定我的解释是否足够清楚,能让你们理解,但我会努力的 我的问题是: 我们有一个外部站点,我们公司的用户通过提供相应的用户名和密码连接到该站点。外部站点是一个ASP.NET网站。我们希望将此网站集成到我们的内部网门户中,以便用户无需输入他们的UN/Pwd即可登录到该网站。由于目标网站没有提供SSO,我们正在模拟登录的POST请求 到目前为止还不错 我们现在需要在初始登录完成后在另一个页面上执行操作。我们也可以模拟相应的POST请求。但问题是,由于我们在最初的POST请求中没有维护任何会话信息,
注意。维护状态是其他站点的责任(通常在cookie中)
您应该手动执行这些操作,然后使用Fiddler比较HTTP请求并找出问题所在 在以编程方式发布登录请求后,我没有看到响应中返回任何cookie。既然是HttpWebRequest,目标站点不应该创建ASP.NET_SessionId cookie并在响应中返回它吗?还是我遗漏了什么?你是在客户端还是服务器上发帖?你在Fiddler中看到cookie了吗?我正在内部创建一个HttpWebRequest,然后将其发布到服务器。小提琴手没有抓住它,因为这不是通过浏览器。。但是,当我检查服务器返回的响应时,我发现根本没有返回任何cookie。在服务器上运行Fiddler,查看其他站点返回的内容。您是否正在使用
CookieContainer
?是。我想我知道问题是什么,但不确定解决办法。。我使用的是HttpWebRequest和HttpWebResponse,用于表示“传出”请求和“传入”响应。这两个类使用System.Net.Cookie来表示Cookie,其中ASP.Net_SessionId是System.Web类中存在的HttpCookie。现在我不知道如何“维护”通过最初的POST请求建立的会话!有什么想法吗?