2011-01-05 166 views
0

嗨,我有同样的问题,我正在寻求解决它。这里是详细信息我有两个网站WebsiteA和WebSiteB(WebsiteB不在我的控制之下,对我来说是一种黑盒子。)。HttpWebrequest需要帮助

这两个网站都有单独的登录页面 我有用户的密码,我在数据库中存储的websiteB的密码。 我想要一种常见的登录页面。如果用户登录到网站A并且他想要访问网站B,则他不必再次输入登录名和密码信息。 我无法触摸websiteB的代码。它被部署和运行。 在登录表单的网站B中,它们具有一个Userid文本框和密码文本框以及一个登录按钮。这个butoon不是提交按钮。它有一个点击事件,它调用一个函数来验证用户。这不是一个简单的帖子。 WebsiteB有一个具有不同框架的网页。登录后成功。这些页面不会转到任何其他页面,而是保留在同一页面上,但加载不同的框架。根据我的知识。我可以使用httpwebrequest类。但面临以下问题。

无法点击按钮。 Response.Redirect不起作用。 似乎WebsiteB并没有在cookie中存储任何东西,因为cookie总是返回一个空字符串

我真的很appriciate如果任何人都可以帮助我。 如何使用response.Redirect。当我重定向它时,显示了相同的登录页面。

回答

0

HttpWebRequest将在WebsiteA的服务器上执行。即使您向WebsiteB执行正确的HttpWebRequest POST,您也无法将该会话cookie传递给用户的浏览器,而不会立即重定向到WebsiteB。

您可能想要调查的其他单点登录技术 - 您所描述的方法不起作用。

+0

HI Qntmfred,请你多解释一下。比如我应该怎么做。我将不胜感激,如果你将指导我应该完成这项任务的步骤。再次感谢 – ASPUSER 2011-01-06 12:30:45

0

不知道如何登录工作到网站B我不能肯定地说,但在某些时候,我确定有一个帖子与登录信息。我最好的解决方案就是尝试模仿B站点登录时所做的事情。使用萤火虫并观察发送的内容以及返回的内容。你必须模仿这种行为。

可能是这样的: POST站点B的验证,返回验证结果。 如果验证是好的,请使用验证结果中的令牌重定向到站点B.

同样,在没有站点B知识的情况下,我不能说,但无论它做什么,它都可能使用普通的http,因此您可能复制它。也就是说,B站点可能会禁止您登录,只接受来自特定URL的登录信息。

至于使用HttpWebRequest,我想你会发现,你最好只是有你从网站A.

0

HI我想出提交一个隐藏的表单。我们可以创建一个XML字符串并将字符串转换为字节,然后使用HttpWebrequest的正常写入函数来写入XML。