Я пытаюсь написать простой http-сервер как часть приложения.Он должен отвечать на запросы Http, отправленные с помощью ajax на 127.0.0.1:someport, простым текстовым ответом.Приложение javascript будет опрашивать (или, в конечном итоге, longpoll) информацию о действиях локальных пользователей.
На данный момент у меня есть httpListener, который вызывает следующее в рамках обработки обратного вызова:
private void ProcessRequest(HttpListenerContext context)
{
var stream = context.Response.OutputStream;
var resp = Encoding.UTF8.GetBytes("This is a test response" + DateTime.Now.ToShortTimeString() + "\r\n\r\n");
stream.Write(resp, 0, resp.Length);
stream.Close();
}
Который выдает результат при вызове из браузера, но ошибку при вызове с $ .ajax.
Какой минимум мне нужно вернуть, чтобы получить успешный ответ на запрос, такой как
$.ajax({
url: 'http://127.0.0.1:12345/',
dataType: 'text',
success: function (data) {
$('#res').html(data);
},
error: function(jqXHR, textStatus, errorThrown)
{
alert(textStatus);
}
}
);
Редактировать: Я считаю, что я избежал проблем межсайтового скриптинга, запустив
netsh http add urlacl url=http://*:12345/app user=domain\user
и могу проследить, что ProcessRequest называется