php 接收 ajax get请求,Laravel 接受Ajax的GET请求

Laravel 框架接收Ajax的GET请求很简单,但是有弯路。

不过 : 这个文章不是初学者看的,至少你们要会创建html界面,创建JS,引用JS库,实现$.Ajax代码,才行..............不过,我相信,应该都会。

首先,Laravel框架接收Ajax的Url都是在Routes里面的web.php里设定的,但是,Laravel 接收Url的入口文件就一个,那就是index.php.什么意思呢?接着往下看:

现在,我们就一步一步完成整个请求的过程:​

2f8dfed098f8

图1-1

先打开Routes里的web.php,里面是系统自定义的一个接收Url请求的设定

Route::get('/', function(){

return view('welcome');

});

这个是什么意思呢?意思就是当index.php后面的是'/'的时候,执行后面函数里语句return view('welcome');也就是,当我们打开http://localhost/yu/public/index.php的时候,就会出现Welcome的界面.这个Welcome的界面就是return view('welcome')这句语句带来的效果.返回一个welcome 页面的视图.这些倒无所谓.主要的是我们要自己定义接收Url的语句.

我们来定义一个:

Route::get('login', function() {

echo "sss";

});

这个定义中:get就是接收以GET方式请求的Url; 'login'就是当index.php后面是login的时候所要执行的操作,即当http://localhost/yu/public/index.php/login 时,执行echo "sss";

接下来,我们要把Ajax给弄进去.先创建一个html界面,然后再创建一个JS文件,然后在html界面引入Jquery的JS,不然你就用不了Ajax.然后,引入你自己创建的JS文件,再然后,执行你自己创建的JS文件里面的函数,这里的函数是test();

2f8dfed098f8

图1-2

这便是test()函数

2f8dfed098f8

图1-3

应该都能看懂.这时候,你们运行你们创建的那个html试试.是不是出现了

2f8dfed098f8

图1-4

这个返回的数据就是你们:

Route::get('login', function() {

echo "sss"; //没错,就是这个

});

什么?你想传数据...那就要改一下了:

Route::get('login/{user}', function($user) {

echo $user;

});

test()函数肯定也要改:

function test() {

var c = "sadsadsad";

$.ajax({

type: "GET",

url: "public/index.php/login/" +c,

success: function (data) {

alert("牛逼!,是这样的! 返回的数据是 : " + data);

},

error: function () {

alert('错误!');

}

});

}

这里不要晕!!!..我们在后台定义接收的是login/{user}.意思参数就是login/后面的数

比如http://localhost/yu/public/index.php/login/哈哈 那这个参数就是"哈哈".

这里和普通的GET请求Url(http://localhost/yu/public/index.php/login?user="哈哈")不太一样,是属于一种Url的优化模式.可以试验一下,在浏览器输入http://localhost/yu/public/index.php/login/哈哈 页面出来的是"哈哈";一样的道理,Ajax的url:"public/index.php/login/" +c, 这个c就是参数,可以自己定义.现在运行创建的html页面,会出现什么?比如这里c我给定义为var c = "这样就对了";然后运行html页面.出现

2f8dfed098f8

图1-5

不用晕,自己试试就懂了.

其实还有第二种传递参数的方式:

Route::get('login', function() {

echo $_GET["user"];

}); //把login后面的{user} 去掉.这样就可以用

2f8dfed098f8

图1-6

看,可以了吧,只是这种Url不太美观,随便你们吧,想用哪种用哪种.还有,用第二种时,Ajax也有点变化,主要是加data这个属性:

2f8dfed098f8

图1-7

这样传递参数倒是方便点,看个人吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值