Я относительно новичок в Symfony, и я считать моя проблема в контроллере, но я не вижу его Я посылаю действительный JSON через ajax-запрос на мой контроллер. При попытке его декодирования результирующий массив имеет длину 0, как будто мой JSON не декодируется должным образом или может быть возвращен getContents()
должным образом?
JS / Ajax:
$('#aggregate').on('click',function(){
var sorted = [];
$('.sortable-items').each(function(){
sorted.push(JSON.stringify($(this).sortable('toArray')));
});
console.log(sorted);
$.ajax({
url: '/documentwarehouse/items/aggregate',
type: "POST",
contentType : 'application/json',
data: {"sorted": sorted},
success: function (data){
alert(data);
}, error: function(data){
alert("Sorry");
}
});
});
пример JSON хранится в var sorted
и проверено с помощью JSONlint:
["[\"list1_23\",\"list1_24\",\"list1_16\",\"list1_17\",\"list1_19\"]", "[\"list2_22\"]", "[\"list4_21\"]"]
Итак, то, что отправляется как данные json через ajax, также проверено:
{"sorted":[" . [\"list1_23\",\"list1_24\",\"list1_16\",\"list1_17\",\"list1_19\"]", "[\"list2_22\"]", "[\"list4_21\"]"]}
контроллер:
public function aggregateAction(Request $request){
$arrayOfListArrays = json_decode($request->getContent(),true);
$response = new JsonResponse([sizeof($arrayOfListArrays)]);
$response->send();
return $response;
}
Ответ предупрежден в success
блок моего вызова AJAX 0
,
Задача ещё не решена.
Других решений пока нет …