z jQuery, uzyskaj dostęp do json z url cross domain, gdzie json może być źle utworzony
Korzystam z funkcji ajax jQuery, aby trafić URL domeny krzyżowej. Adres URL zwróci json. Jestem w fazie odkrywania z tym, ale myślę, że ponieważ wartości jsona zawierają kilka łańcuchów, json eval zgłasza błąd i zatrzymuje wykonywanie skryptu po stronie mojego klienta. Błąd, który otrzymuję, to „niezakończony literał ciągu”. Wiem, że jeśli koduję zwróconego jsona, umieszczając go w lokalnym divie i usuwając „” smyczki (i kilka ukrytych znaków specjalnych), mogę sprawić, by json mógł się z powodzeniem wydać. Czy poprzez obejście, czy poprzez korektę mojego kodu, co mogę zrobić, aby uzyskać json z adresu URL i zapisać go w javascript po stronie klienta jako poprawny obiekt json?
mój obecny kod. żadna z zdefiniowanych funkcji (sukces, uzupełnienie, błąd, filtr danych) nie jest wykonywana:
$(function() {
$.ajax({
url: "http://www.codemash.org/rest/sessions.json?format=jsonp&callback=?",
dataType: "jsonp",
success: successFunc,
complete: completeFunc,
error: errorFunc,
dataFilter: dataFilterFunc
});
});
function successFunc() { console.log('successFunc(). enter.'); }
function completeFunc() { console.log('complete(). enter.'); }
function errorFunc() { console.log('errorFunc(). enter.'); }
function dataFilterFunc(data, type) {
data.replace(/\W/g, ' ');
return data;
}