Jon*_*ano 5 ajax jquery post laravel-5
也许这是一个非常普通的话题,但是我找不到任何解决方案!,我正在开发的应用程序是在Laravel 5.0下运行的,我需要将jquery ajax的一些数据发送到laravel 控制器,我已经按照本教程进行了使用ajax发布数据,我已经按照步骤进行了全局配置,因此我拥有一个带有csrf令牌的元,当我使用ajax将发布请求发送到url时,它只是发送了令牌!但是我没有给它发送的任何数据!
这是我的ajax函数(我正在使用虚拟数据对其进行测试):
$.ajax( {
url : '/reservacion/paso-uno/enviar',
method : 'post',
data : { name: "John", location: "Boston" }
} );
Run Code Online (Sandbox Code Playgroud)
但是当我dd(\ Request :: all()); 在发布函子中,我仅获得令牌,如果我检查标题表格数据,我也将仅获得此令牌:
这是带有csrf的meta标签:
<meta name="_token" content="{{{ csrf_token() }}}"/>
Run Code Online (Sandbox Code Playgroud)
这是全局ajax设置:
$.ajaxSetup({
headers: { 'X-CSRF-Token' : $('meta[name=_token]').attr('content') }
});
Run Code Online (Sandbox Code Playgroud)
大更新
不知道为什么,也不知道怎么回事,我想这只是一个缓存问题,但是具有以上配置,它会发送数据,但是只有当我<input type='submit' >在jQuery中设置了click事件时,这种情况才会发生,因为如果我将其设置为Submit事件,它将在浏览器路径中使用查询字符串重新加载页面。
现在的问题是控制器的功能无法实现...当我单击按钮时,什么也没有发生,数据已发送但没有到达laravel控制器。
您可以将其_token作为数据集的一部分传递吗?
$.ajax( {
url : '/reservacion/paso-uno/enviar',
method : 'post',
data : { "_token" : $('meta[name=_token]').attr('content'), name: "John", location: "Boston" }
} );
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10484 次 |
| 最近记录: |