gpt4 book ai didi

php - 此路由不支持 GET 方法。支持的方法 : POST. laravel 5.8 Ajax

转载 作者:可可西里 更新时间:2023-11-01 13:27:19 26 4
gpt4 key购买 nike

我想了解更多关于如何将来自 ajax 请求的数据保存到 laravel 上的数据库中,本例中的数据是原始(JSON 格式)数据只是为了看看它是如何工作的如果我不将它添加到代码(注意保存到数据库中)

节省部分

 $input = Input::get('name');
$json = new JsonTest;
$json->json = $input;
$json->save();

它工作正常但是当我从上面的代码中得到这部分时(保存部分)它给出了一个错误

   The GET method is not supported for this route. Supported methods: POST.

那么如何将文本区域保存到数据库中。数据库database

网络.php

 Route::post('/customer/ajaxupdate', 'AjaxController@updateCustomerRecord')- 
>name('jsonTest');

Controller

public function updateCustomerRecord(Request $request)
{

if(request()->ajax()){

$input = Input::get('name');
//$input = $request->all();
$json = new JsonTest;
$json->json = $input;
$json->save();

return response()->json(['status' => 'succes', 'message' => 'saved in database']);

} else {

return response()->json(['status' => 'fail', 'message' => 'this is not json']);

}

}

Blade

 <!DOCTYPE html>
<html lang="en">
<head>
<title>JavaScript - read JSON from URL</title>
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<meta name="csrf-token" content="{{ csrf_token() }}" />
</head>

<body>
<textarea oninput="myFunction()" id="input" name="input" style="height:
500px;width: 500px">
</textarea>

<script>
const warning = 'This json is not correctly formatted';
const text = {status: "failed", message: "this is not correct json format"};

$.ajaxSetup({
headers: {

'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')

}
});

function myFunction(){

let input = document.getElementById("input").value;

try {
let id = JSON.parse(input);
if (id && typeof id === "object") {
$.ajax({
method: 'POST', // Type of response and matches what we said in the route
url: '{{ route('jsonTest') }}', // This is the url we gave in the route
data: {'id' : id}, // a JSON object to send back
success: function(response){ // What to do if we succeed
console.log(response);
},
error: function(jqXHR, textStatus, errorThrown) { // What to do if we fail
console.log(JSON.stringify(jqXHR));
console.log("AJAX error: " + textStatus + ' : ' + errorThrown);
}
});
}
}
catch (e) {
console.log(warning);
console.log(text);
}
return false;
}
</script>

</body>
</html>

最佳答案

我曾经遇到过同样的问题,问题在于从 http 到 https 的自动重定向。所以我在调用api的时候把url改成了https本身。

关于php - 此路由不支持 GET 方法。支持的方法 : POST. laravel 5.8 Ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55279293/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com