【发布时间】:2015-11-22 14:55:17
【问题描述】:
也许这是一个很常见的话题,但我找不到任何解决方案!,我正在开发的应用程序是在 Laravel 5.0 下,我需要将一些数据从 jquery ajax 发送到laravel controller,我已经按照 this 教程使用 ajax 发布数据,我已经按照步骤进行了全局配置,所以我有一个带有 csrf 的元数据strong> 令牌,当我使用 ajax 将 post 请求发送到 url 时,它只是发送令牌!但我给它发送的任何数据都没有!
这是我的 ajax 函数(我正在使用虚拟数据来测试它):
$.ajax( {
url : '/reservacion/paso-uno/enviar',
method : 'post',
data : { name: "John", location: "Boston" }
} );
但是当我 dd(\Request::all()); 在 post func 中我只得到令牌,如果我检查标题表单数据,我只得到这个:
这是带有 csrf 的元标记:
<meta name="_token" content="{{{ csrf_token() }}}"/>
这是全局 ajax 设置:
$.ajaxSetup({
headers: { 'X-CSRF-Token' : $('meta[name=_token]').attr('content') }
});
重大更新
不知道为什么,也不知道如何,我想这只是一个缓存问题,但是具有上述配置它会发送数据,但这仅在我有 <input type='submit' > 并在 jquery 中设置点击事件时发生,因为如果我为提交事件设置它,它会在浏览器路径中使用查询字符串重新加载页面。
现在的问题是没有达到控制器的功能......当我点击按钮时没有任何反应,数据被发送但它没有到达 laravel 控制器。
【问题讨论】:
-
尝试添加dataType: 'html'
-
您是否尝试将原始 JSON 发布到您的控制器?
-
@hizbul25 noup,没用
-
@Phil 是的,但我现在需要将数据发送到控制器,一旦到了那里,我将了解如何操作它...
-
@SetSailMedia 是的,也许,但这次不是关于 Laravel,它更像是一个 ajax 的东西,我真的不知道为什么它不发送数据!
标签: jquery ajax post laravel-5