Forms 从其他服务器注册到Laravel
我想在网站上显示注册表单,但当用户点击submit时,表单数据将发布到Laravel应用程序(另一台服务器上)进行注册Forms 从其他服务器注册到Laravel,forms,laravel,laravel-5.3,csrf,Forms,Laravel,Laravel 5.3,Csrf,我想在网站上显示注册表单,但当用户点击submit时,表单数据将发布到Laravel应用程序(另一台服务器上)进行注册 到目前为止,laravel停止抛出CSRF not found异常。你知道如何解决这个问题吗?如果两个应用程序都是你的 您可以创建一个新的中间件组: protected $middlewareGroups = [ 'web' => [ ... ], 'remote-login' => [ \App\H
到目前为止,laravel停止抛出CSRF not found异常。你知道如何解决这个问题吗?如果两个应用程序都是你的 您可以创建一个新的中间件组:
protected $middlewareGroups = [
'web' => [
...
],
'remote-login' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
// \App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
];
评论/删除/禁用VerifyCsrfToken中间件。然后将其映射到新文件:
protected function mapWebRoutes()
{
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/web.php'));
Route::middleware('remote-login')
->namespace($this->namespace)
->group(base_path('routes/remote-login.php'));
}
然后在路由/remote login.php
中,您最好创建一个非平凡的登录路由:
Route::group(['prefix' => 'remote-login'], function () {
Route::get('/auth/8g7h6jk5l4oA/', function () {
dd('do you authentication');
});
});
如果两个应用程序都是您的 您可以创建一个新的中间件组:
protected $middlewareGroups = [
'web' => [
...
],
'remote-login' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
// \App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
];
评论/删除/禁用VerifyCsrfToken中间件。然后将其映射到新文件:
protected function mapWebRoutes()
{
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/web.php'));
Route::middleware('remote-login')
->namespace($this->namespace)
->group(base_path('routes/remote-login.php'));
}
然后在路由/remote login.php
中,您最好创建一个非平凡的登录路由:
Route::group(['prefix' => 'remote-login'], function () {
Route::get('/auth/8g7h6jk5l4oA/', function () {
dd('do you authentication');
});
});
Antonio的方法会起作用,但只需将您不希望受CSRF中间件保护的路由添加到
$中就更容易了,除了app/Http/middleware/VerifyCsrfToken.php中的数组之外,但是,只需将您不希望受CSRF中间件保护的路由添加到app/Http/middleware/VerifyCsrfToken.php中的$数组中就更容易了,忽略登录页面上的crsf令牌,将/login
添加到中,除了Http/Middleware/VerifyCrsfToken.php
中的数组中。请注意,CRSF令牌是有原因的,这可能有助于让不需要的人更容易访问您的站点。创建用于注册的API并从站点调用该API如何。。。。检查此API指南忽略登录页面上的crsf令牌,将/login
添加到中,除了Http/Middleware/VerifyCrsfToken.php
中的数组中。请注意,CRSF令牌是有原因的,这可能有助于让不需要的人更容易访问您的站点。创建用于注册的API并从站点调用该API如何。。。。检查此API指南