【发布时间】:2018-06-03 21:59:41
【问题描述】:
我的问题如下: 我有一个 HTML 格式的外部表单,我必须使用 AJAX 将数据发送到 Laravel 应用程序。 所以我在客户端创建了一个简单的表单(http://localhost/myLaravelForm):
<form action="http://localhost/laravelApp/public/task/addAjax" id="addNewTask" method="post">
<label>Add task : </label>
<input type="text" name="name" id="task-name">
<button type="submit" id="addTask">Send</button>
</form>
在客户端我创建了一个 AJAX:
$(document).ready(function() {
$(function () {
$('addNewTask').on('submit', function () {
var taskName = $('#task-name').val();
var csrf_token = '<%= token_value %>';
$.ajax({
method: "POST",
url: "http://localhost/monSuperProjet/public/task/addAjax",
dataType: "JSON",
data: {
"name": taskName,
"token": CSRF_TOKEN
},
error: function (data) {
//something went wrong with the request
alert("Error");
},
success: function (data) {
console.log (data);
}
});
event.preventDefault();
});
现在我在服务器端创建了一个名为 Ajax 的控制器:
class Ajax extends Controller
{
public function receiveValues(Request $request) {
var_dump (Task::find($request->input('name')))
}
}
并创建了一条路线:
Route::post('/task/addAjax','Ajax@receiveValues');
不幸的是,我遇到了可怕的错误.. 我是 Laravel 和 Ajax 的初学者,最常见的是编码。我们了解我们的错误:)) 我试图找出一些答案,但没有成功...... 感谢您的帮助
【问题讨论】:
-
你能和我们分享一下那些可怕的错误吗?
-
RouteCollection.php 第 218 行中的 MethodNotAllowedHttpException:在 RouteCollection->methodNotAllowed(array('POST')) 中 RouteCollection.php 第 218 行中的 RouteCollection.php 第 205 行中 RouteCollection->getRouteForMethods(object(Request ), array('POST')) 在 RouteCollection.php 第 158 行 RouteCollection->match(object(Request)) 在 Router.php 第 821 行 Router->findRoute(object(Request)) 在 Router.php 第 691 行Router->dispatchToRoute(object(Request)) 在 Router.php 第 675 行中 Router->dispatch(object(Request)) 在 Kernel.php 第 246 行
-
你在用api吗,整个应用都在laravel里面。
-
现在我有了这个,因为我在 VerifyCsrfToken.php 第 67 行的 Controller TokenMismatchException 中忘记了一个逗号我们可以这么说......应用程序在 Laravel 中(它只是 laravel 中呈现的基本形式网站)...我在“外部”创建了第二种形式,我将尝试将它集成到 Cordova 中...所以它只需要 HTML、JavaScript 和 Jquery
-
你必须为 Laravel 提供一个 CSRF 令牌。在 Laravel 刀片模板中,您可以使用
{{ csrf_token() }}。如果那不可能,您需要禁用 VerifyCsrfToken 中间件。
标签: jquery ajax laravel-5 ajaxform