Laravel接收前端ajax传来的数据的实例代码

时间:2021-05-26

最近有时间把公司的项目整理一下,并把遇到的问题解决了。那么今天也算个学习笔记吧!

最近在做一个笔记的项目,技术栈如下:vue.js + laravel + mongodb

首先不得不感叹vue的神奇,项目昨晚之后我会对整个项目中用到的技术和踩过的坑进行一个总结,今天先记录一个前端传送数据给后端,laravel接收的例子。

前端ajax插件我没有使用vue-resource,说实话,用他遇到了坑,所以使用了axios.js,很好用,而且比vue-resource还小。

来看前端代码(省略vue逻辑部分):

axios.post('index.php/login',{ email:this.email, pass:this.pass }).then(function(res){ console.log(res) }).then(function(){ console.log(321) })

this.email和this.pass即为用户填写的表单数据,点击登录即执行这个方法(验证数据格式没问题后)。

来看Laravel如何接收这两个值:

我们在app文件夹下建立一个GUser.php的Model文件,内容如下:

<?phpnamespace App;use Mongodb;use DB; class GUser extends Mongodb { public static function login($email) { $mongo = DB::connection('mongodb'); $res = $mongo->collection('user')->where('email',$email)->first(); return $res; }}

再在app/Http/Controllers下建立一个GUserController.php文件,内容如下:

<?phpnamespace App\Http\Controllers; use App\Http\Controllers\Controller;use App\GUser;use Illuminate\Http\Request; class GUserController extends Controller{ protected function login(Request $request) { $email = $request->input('email'); $pass = $request->input('pass'); $res = GUser::login($email); return $res; }}

当然啦,这里没有用到pass的值,我在这里省略了登录验证的逻辑。

然后在路由文件web.php里配置:

Route::any(‘/login','GUserController@login');

到此结束。以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章