Ajax POST con risposta JSON

WorldWideWeb

Utente Attivo
6 Apr 2008
78
0
6
Calabria
Salve a tutti.
All'interno di un js eseguo una chiamata POST tramite Ajax
Codice:
$.ajax({
        type: 'POST',
        url: url,
        dataType: "json",
        async: true,
        success: myFunction,
        error: function (xhr, textStatus, error) {
            alert(error);
        }
    });
La risorsa richiamata in post restituisce una stringa json
Codice:
 var response = "{\"Documento\":[{\"Tipo_Documento\":\"CARTA IDENTITA'\"},{\"Numero_Documento\":\"12345XY\"},{\"Luogo_Rilascio\":\"ROMA\"},{\"Data_Rilascio\":\"11/10/2008\"},{\"Data_Scadenza\":\"11/10/2018\"},{\"Ente_Rilascio\":\"COMUNE\"}],\"Contatti\":[{\"E-Mail\":\"test@test.com\"},{\"Cellulare\":\"1234567890\"}]}"

            HttpResponse r = context.Response;
            r.BufferOutput = true;
            r.ContentType = "text/x-json";
            r.Cache.SetExpires(DateTime.Now.AddSeconds(seconds));
            r.Cache.SetCacheability(HttpCacheability.Private);
            r.Write(response);
            r.Flush();
La stringa json è corretta (ho verificato tramite jsonlint), ma nonostante ciò, la pagina aspx mi dice "Invalid JSON", mostrandomi il json che in realtà è valido.

Sto usando il .NET framework 4.

Avete qualche idea?


Grazie mille.
WWW
 
Ultima modifica di un moderatore:
@WorldWideWeb
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code.gif
quando posti del codice generico, oppure la funzione codice dalla barra degli strumenti
box inserisci 2.png.JPG

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie

Per questa volta te lo sistemo io ma mi raccomando per il futuro
 
E' bastato aggiungere all'inizio la seguente istruzione

Codice:
context.Response.Clear();

e la seguente modifica

Codice:
r.ContentType = "text/json";  // anzichè "text/x-json"


Saluti
WWW
 

Discussioni simili