Aggiungo la mia risposta accanto alle altre risposte valide qui. In primo luogo anche se si vuole ottenere la risposta restituito nella funzione di successo anziché la funzione completa:
$("#files").kendoUpload({
async: {
saveUrl: url,
removeUrl: removeUrl,
autoUpload: true
},
select: onFileSelect, // function for when a file is selected
success: onFileSuccess, // function that returns response after upload
complete: onFileComplete, // function after success
remove: onFileRemove, // function for when a file is removed
});
La sulla funzione successo restituisce un oggetto (normalmente la gente lo chiama e)
function onFileSuccess(e) {
console.log("e.response", e.response);
console.log("e.operation", e.operation);
console.log("e.XMLHttpRequest.status", e.XMLHttpRequest.status);
//e.operation is upload or remove
if (e.operation === "upload") {
// a file was added, get the response
var fileid = e.response;
} else {
// Do something after a file was removed
}
}
mia console voci di log restituiscono questi dati:
console.log values
questo è il modo in torno i miei dati dal server:
public HttpResponseMessage InsertTempFile()
{
HttpPostedFile file = System.Web.HttpContext.Current.Request.Files[0];
//........
// Code that adds my file to the database
// and generates a new primary key for my file
//.........
var response = new HttpResponseMessage(HttpStatusCode.OK);
response.Content = new StringContent(myNewId.ToString());
return response;
}
Il response.Content restituisce il mio nuovo ID nel e.response Il HttpStatusCode.Ok ritorna il mio stato di 200. C'è un sacco di altri dati restituiti e se si controlla la risposta.
notare che per utilizzare HttpResponseMessage e HttpStatuseCode è necessario includere i seguenti spazi dei nomi nella tua classe:
using System.Net.Http;
using System.Net;
Hai provato a 'console.log (e)' per vedere quello che sta restituito? sono disposto a essere "e" non è un "evento" ma è piuttosto il "dato restituito dallo srever". Se usi 'var data = $ .parseJSON (e)' probabilmente finirai con un oggetto dati che ha proprietà come definito dal tuo controller. – Ohgodwhy
Yah la variabile dati contiene la stringa come 'Server Response: the actual string'. – Pa1
L'oggetto restituito 'è' un oggetto, hai usato parseJSON e non era l'oggetto che hai inviato? posta l'oggetto qui, usa jsfiddle e salvalo. – Ohgodwhy