Laravel验证来自不同网站的用户

问题描述 投票:3回答:4

我有2个不同的网站。在Wordpress中开发面向公众的网站,在Laravel中开发项目功能。

我已将登录表单放置在Wordpress中,并尝试从wordpress自定义表单登录到Laravel项目模块。但是存在与csrf令牌不匹配有关的问题。

这是来自WordPress网站的代码:

<form role="login" action="http://projectmodule.com/auth/login">
  <input type="text" name="username" />
  <input type="password" name="password" />
  <input type="submit" name="login" value="Login" />
</form>

有没有什么方法可以从wordpress到Laravel验证用户,而无需使用任何Laravel软件包。或如何仅针对特定路由停止csrf令牌验证?

我正在使用Laravel 5.0和Wordpress 4.4版本。

php wordpress laravel laravel-5
4个回答
2
投票

您的问题与CORS(跨站点资源共享)有关。

这里是Tino Tkalec逐步实施和理解的良好链接。

http://www.toptal.com/web/cookie-free-authentication-with-json-web-tokens-an-example-in-laravel-and-angularjs

及其github回购代码为https://github.com/ttkalec/laravel5-angular-jwt

您将通过这种方式轻松学习和实施。


1
投票

如果使用Laravel 5.1,则可以从CSRF中间件中排除特定的路由。检查文件app\Http\Middleware\VerifyCsrfToken.php

class VerifyCsrfToken extends BaseVerifier
{
    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        'your_route_here'
    ];
}

对于$except数组中指定的所有路由,将不执行中间件


1
投票

-1
投票

我如何使用户能够以表格形式输入其电子邮件和密码,并在另一个网站上登录,如果可能的话,需要一些解决方案

© www.soinside.com 2019 - 2024. All rights reserved.