我试图通过ajax调用从我的路线获取一些信息。我必须查询我需要在路径中获取的字符串。
$.ajax({
url: '/servers',
type: 'GET',
data: {ip: serverIp, port: serverPort},
})
.done(function() {
console.log("success" + data);
})
然而,控制台返回404.我不确定如何在我的路线中准确地获取此请求。
Route::get('/servers', function(){
$ip = Input::get('ip');
$port = Input::get('port');
return $ip . $port; // checking if it works
});
最终这将是路由器到控制器的请求,但我只是试图让ajax请求首先工作。我做错了什么?
答案 0 :(得分:0)
您可以尝试此操作来检索POST/GET
输入:
$ip = Input::get('ip');
$port = Input::get('port');
但是在这种情况下(针对查询),您的URI
应该包含它们,例如:
http://example.com/servers?ip=serverIp&port=serverPort
因此,请将URL
传递给ajax
// query string: ?ip=serverIp&port=serverPort
url: '/servers?ip='+serverIp+'&port='+serverPort
如果你使用POST
请求,那么你应该这样做,在这种情况下你可以试试这个:
$.ajax({
url: '/servers',
type: 'POST',
data: {ip: serverIp, port: serverPort}
})
.done(...)
从POST
检索数据的服务器端代码保持不变,只将路由声明更改为post
。查看Laravel
网站上的更多信息(Retrieving An Input Value。