Вы можете составить ответ Захари и сделать его дальше, создав службу WCF и переключив ваш вызов $ .ajax () на GET вместо POST.Это не будет такой большой запрос (не то, чтобы POST был таким большим), но вы также будете использовать правильный HTTP-глагол.(POST используется для вставки; GET должен использоваться для извлечения данных).
Ваш вызов jQuery может выглядеть следующим образом:
jQuery.ajax({
type: 'GET',
dataType: 'json',
url: 'MyService.svc/GetServerProgress',
success: function(result){
alert(result.d);
});
Затем вы создадите службу WCF и создадите службуметод с именем GetServerProgress.
[OperationContract]
[WebGet(ResponseFormat = WebMessageFormat.Json, UriTemplate = "GetServerProgress")]
public int GetServerProgress()
{
return 37;
}
Наконец, вы, вероятно, захотите, чтобы у клиента был некоторый JavaScript, который вызывает setTimeout()
для вашего метода $ .ajax (), для которого вы периодически извлекаете прогресс сервера из WCF.сервис.
Удачи !!