我在Laravel中使用ajax通过POST发送大量数据。 当我快速发送请求并将页面重定向到另一个页面时,当ajax调用被取消或中止时,数据会丢失。
我已经提到了以下流程:
以下是代码
<script>
var cssData = $('.css-textarea').val();
$.ajax({
url: '/save-data',
type: 'POST',
data: {cssData: cssData},
success:function(response){
//do something after success
}
});
</script>
PHP / Laravel代码
public function saveCssData(){
$data = Input::get();
$cssData = $data['cssData'];
//Do something to save data
$db->cssData = $cssData;
$db->save();
}
请不要假设确切的代码,因为我给出了一个例子。
这段代码工作正常但是当我通过ajax发送快速调用并在获得响应之前,我重定向到另一个页面然后数据丢失。我已经设置了足够的post_max_size和其他配置,但仍然没有修复
我通过ajax请求发送的输入示例
{
"testCss":
" #class{background:#fff}../*big amount data */...
#testDiv{color:#000}
"
}
我在数据库中收到的输出示例
{
"testCss":
" #class{background:#fff}../*big amount data */...
#testDiv{col
您可以看到输出中的数据丢失。这个问题有时会出现,但我注意到,当我快速请求ajax并通过重定向到另一个页面来中止请求时,它会出现,但不知道如何解决这个问题。