【问题标题】:Can you grab a webpage contents and the cookies?你能抓取网页内容和cookies吗?
【发布时间】:2013-12-04 19:58:49
【问题描述】:

我有一个谷歌应用程序域,我想为其创建自定义登录页面,但遇到了问题。

Google 提供了用于执行此操作的 SSO/OpenID/userApi 文档。一旦用户点击您的网站,我可以理解这些文档上的实现状态,他们将被发送到常规 gmail 登录,然后在登录后发送回您的网站。我试图让他们登录自定义页面而不是被发送到谷歌的默认 gmail 登录。还有其他文档似乎需要 SSO 和大量集成,我无法理解哪些可以让您这样做,但正如我所说,这超出了我的想象。

然后我想我可以复制表单元素并创建自定义 css,因为表单上的操作值将通过 google 进行身份验证。这偶尔会起作用,直到我发现当您转到 https://accounts.google.com/ServiceLoginAuth(默认 gmail 登录名)时,它会以 html 表单创建一个值(name="GALX" value=Randomletters),该值必须与 cookie 名称和值匹配才能能够向谷歌提交和验证。

从这里我认为没问题我会为谷歌登录创建一个隐藏的 iframe,以便填充 cookie(它确实获取 cookie),然后读取并在 html 表单中插入值。直到我发现出于安全原因,您无法更改或读取其他域的 cookie,这是非常有意义的。

然后我想我可以在 gmail 登录 url 上使用 php 的 file_get_contents 来获取 cookie 和正确的 html,然后将 html 插入到我的自定义页面中。我收到了 html,但这次没有 cookie。

无论如何发送一个请求,该请求将返回带有 php 的 file_get_contents('url') 或 curl 之类的 html/cookie 对?这样我可以遍历 file_get_contents 对象并通过 DOM 将 html 插入到页面中。还是因为安全原因特别阻止了这种情况,我是在吠叫一棵永远不会工作的树?

如果上述情况不可行,有人可以解释我如何通过自定义登录屏幕登录我的用户吗? 这样一个项目的谷歌文档是: https://developers.google.com/appengine/docs/python/gettingstartedpython27/usingusers https://developers.google.com/appengine/docs/python/users/#Python_Signing_in_and_out https://developers.google.com/google-apps/sso/saml_reference_implementation

【问题讨论】:

    标签: php html google-app-engine


    【解决方案1】:

    我相信这就是您正在寻找的... http://curl.haxx.se/docs/http-cookies.html

    【讨论】:

    猜你喜欢
    • 2010-10-09
    • 1970-01-01
    • 2019-01-13
    • 1970-01-01
    • 1970-01-01
    • 2021-10-15
    相关资源
    最近更新 更多