我想用Laravel 6做一个登录页面,在同一服务器上的Laravel和Codeigniter程序之间共享登录信息。
我有一个Laravel 6程序,我使它的登录页面直接用户到其他三个独立的系统,两个由Laravel和第三个由Codeigniter制作的想法是,我手动注册用户的电子邮件和密码在这三个系统和第四个,所以我们有4个程序,一个用相同的电子邮件和密码登录其他三个系统中的三个系统。主程序为https://almoderator.com/home/login,系统页面为https://almoderator.com/home/systems
email:omarhesham1983@gmail.com password: 123456789我写的代码适用于两个Laravel系统,但不适用于Codeigniter系统(facebook系统),以下是我的代码:
@extends('layouts.app')
@section('content')
<div class="container">
<h2 class="text-center">Select Platform</h2>
</div>
<div class="container">
<div class="d-block text-center d-md-flex justify-content-between small-width">
<div>
<form method="POST" action="https://almoderator.com/fb/home/login" class="needs-validation" novalidate="">
<div class="form-group">
<input hidden id="email" type="email" value="{{ Auth::user()->email }}" class="form-control" name="username" tabindex="1" required="" autofocus="">
<!-- <div class="invalid-feedback">
Please fill in your email
</div> -->
</div>
<div class="form-group">
<input hidden id="password" type="password" value="{{ Auth::user()->password }}" class="form-control" name="password" tabindex="2" required="">
</div>
<div class="form-group">
<button type="submit" class="btn" tabindex="4">
<i class="fab fa-facebook-square"></i>
</button>
</div>
</form>
</div>
<div>
<form class="" action="http://almoderator.com/insta/insta_login" method="POST">
<input type="hidden" name="_token" value="qg9YHNZsZI2wDjhE2XxvHC6A4VM1BjdcCn5kzTRl">
<div class="form-group">
<input hidden id="email" type="email" class="form-control" name="email" value="{{ Auth::user()->email }}" placeholder="Enter email" required="" autofocus="">
</div>
<div class="form-group">
<input hidden value="{{ Auth::user()->password }}" type="password" name="password" class="form-control" id="password" placeholder="Password">
</div>
<div class="form-footer">
<button type="submit" class="btn"><i class="fab fa-instagram"></i></button>
</div>
</form>
</div>
<div>
<form class="" method="post" action="https://almoderator.com/mail/includes/login/custom.php">
<div class="form-group">
<input hidden type="text" value="{{ Auth::user()->email }}" class="form-control" placeholder="Email" name="email" id="email">
</div>
<div class="form-group">
<input hidden type="password" value="{{ Auth::user()->password }}" class="form-control" placeholder="Password" name="password">
</div>
<div class="form-group">
<input type="hidden" name="redirect" value="">
</div>
<div class="form-group">
<button type="submit" class="btn"><i class="fas fa-envelope"></i></button>
</div>
</form>
</div>
</div>
</div>
@endsection我能做些什么来唤醒它,我对两个框架是新手,laravel 6和Codeigniter,所以请考虑一下。请给我提个建议。
发布于 2020-02-05 21:47:42
听起来你想要实现OAuth2。将身份验证逻辑专用于单独的服务器。
我希望你不要在没有加密的情况下存储用户的密码。但根据这句话,你并不知道它。
<input hidden value="{{ Auth::user()->password }}" type="password" name="password" class="form-control" id="password" placeholder="Password">通常,Auth::user()->password密码是加密的,因此它将返回无效的密码。
如果您有多个应用程序并尝试从一个应用程序向另一个应用程序提交POST请求,您可能会面临CSRF,每个应用程序都在生成和验证csrf-token,因此您需要禁用它或采用通用方法生成和验证它们。
https://stackoverflow.com/questions/60076891
复制相似问题