【问题标题】:Google Authentication in Iframe - Laravel 4.2iframe 中的谷歌身份验证 - Laravel 4.2
【发布时间】:2016-08-24 04:38:12
【问题描述】:

我在我的一个应用程序中使用 Google 身份验证。一切正常,但是当我尝试在 iframe 中包含应用程序 URL 时,它会显示以下消息,

我正在使用 Laravel 4.2,在搜索解决方案后,我得到了以下解决方案。

在 (/vendor/laravel/framework/src/Illuminate/Http/FrameGuard.php) 中注释以下行

$response->headers->set('X-Frame-Options', 'SAMEORIGIN', false);

或在 bootstrap/start.php 中添加以下行

$app->forgetMiddleware('Illuminate\Http\FrameGuard');

尝试了这种方法,但仍然显示错误,并且 Google 身份验证不起作用。

有人遇到过同样的问题吗?

【问题讨论】:

    标签: php api iframe laravel-4


    【解决方案1】:

    更改服务器上的标头对明确拒绝加载 iframe 的 google 服务器的响应没有影响。为什么不在顶部框架中进行常规的服务器端 OAuth 握手?这会重定向到 google,用户进行身份验证,然后 google 会使用访问令牌重定向回您的网站。

    【讨论】:

    • 您的意思是在父网站中添加身份验证逻辑(在 iframe 中添加此特定应用程序的位置)?如果是,我无法控制父网站。这就是问题所在。
    • 弹出窗口怎么样?您可以拥有相同的流程,但打开一个在 oauth 舞蹈结束时关闭的弹出窗口。 developers.google.com/identity/protocols/OAuth2UserAgent
    猜你喜欢
    • 2016-11-11
    • 2012-09-20
    • 2020-08-15
    • 2018-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-20
    相关资源
    最近更新 更多