Formatowanie JSON (wysyłanie JSON przez jQuery AJAX post na serwer Java/Wicket)
Używam jQuery do wysyłania JSON na serwer Java, ale myślę, że mój JSON musi się mylić. Oto przykład moich danych i jak je wysyłam:
var lookup = {
'name': name,
'description': description,
'items': [{
'name': itemName,
'value': itemValue
}]
}
$.ajax({
type: 'post',
data: lookup,
dataType: 'json'
});
Używam AbstractAjaxBehavior Wicketa do odbioru danych i chciałbym otrzymać pojedynczy łańcuch JSON, który mogę przeanalizować. Kiedy dostaję mapę z przekazanymi parametrami, keyset wygląda tak:
items[0][name],
description,
name,
items[0][value],
Oczywiście mogę łatwo uzyskać wartości dla nazwy i opisu, ale klucz dla mojej tablicy elementów jest pomieszany. Jestem pewien, że to coś prostego, ale wydaje mi się, że ciągle szukam rozwiązania. Jakieś sugestie? Dzięki!
1 answers
Musisz użyć JSON.stringify:
$.ajax({
type: 'post',
data: JSON.stringify(lookup),
contentType: 'application/json',
dataType: 'json'
});
Należy również podać 'application / json' jako contentType. Domyślnie jQuery będzie serializował obiekty z application/x-www-form-urlencoded (nawet jeśli contentType to application/json'). Więc musisz to zrobić ręcznie.
EDIT: kluczem do 'post' powinien być Typ, A Nie metoda.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-07-07 00:46:47