是否可以在Perl中执行Web流的一部分,然后将剩余的会话转移到Firefox?
我需要重试(使用Perl)登录到一个网站,该网站每次都会返回500,然后成功登录,将经过身份验证的会话转移到Firefox,我可以继续正常浏览。这可能吗?
如果可以,我该怎么办?你能指点我一些关于如何转移cookie /会话的资源吗?
答案 0 :(得分:6)
答案 1 :(得分:2)
棘手。您将不能够让您的服务器登录到第三方服务,然后只是向您的用户提供会话cookie,并将他重定向到第三方应用程序。这不起作用,因为cookie是特定于域的,域不能访问其他域的cookie或由其他域设置。
因此,您的服务需要充当第三方服务的接口,因此您需要在服务器上维护用户会话。此用户会话会跟踪您的用户,将登录到第三方服务,并在适当时向第三方服务发出请求。您服务器上的会话将是此第三方服务的http客户端,因此它需要能够正确处理cookie - 即模仿浏览器。
在设置和维护用户会话方面,会有很多CPAN模块可以帮助您解决这个问题。
有关在Perl中管理用户会话的详细信息,请参阅 https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-1044683.html
编辑:某些Web服务可以通过在客户端拒绝cookie时将会话ID注入URL来管理用户会话。如果您的第三方服务会执行此操作,您可以将登录响应URL作为重定向提供给您的用户。但是,如果会话绑定到IP,这将会中断。