我在Laravel 5.0编写一个拍卖网站,通过使用每5秒执行一次的AJAX轮询来模拟实时更新.问题是我的服务器返回零星的HTTP 401状态.
我的路线是这样构建的:
Route::post(auction/live/update, 'AuctionController@ajaxSendUpdate');
Run Code Online (Sandbox Code Playgroud)
我的控制器是这样的:
public function ajaxSendUpdate() {
// Business logic: queries database, couple of Ifs, etc…
$data = array('success' => true, 'otherStuff' => $myData);
return Response::json($data);
}
Run Code Online (Sandbox Code Playgroud)
最后我的poller设置如下:
// a bit of HTML
function getAuctionUpdate() {
setTimeout(function () {
$.ajax({
type: "POST",
url: "{!! url('auction/live/update')!!}",
dataType: 'json',
data: {
auctionID: $('#auctionID').val()
},
success: function (data) {
if (data['success']) {
// Updates some labels, etc.
getAuctionUpdate(); // Rearms itself
}
}
} }); // Not sure if …Run Code Online (Sandbox Code Playgroud)