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

时间:2016-01-08 09:04:14

标签: php wordpress laravel laravel-5

我有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>

有没有办法可以在不使用任何Laravel软件包的情况下从wordpress到Laravel对用户进行身份验证。或者如何仅针对特定路由停止csrf令牌验证?

我使用的是Laravel 5.0和Wordpress 4.4版本。

3 个答案:

答案 0 :(得分: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 :(得分: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数组中指定的所有路由,中间件将不会被执行

答案 2 :(得分:0)