В приложении ASP.Net мне нужно отправить некоторые данные (urlEncodedUserInput) через http POST на внешний сервер в ответ на ввод пользователя, не дожидаясь ответа на страницу. Неважно, какой ответ от другого сервера, и мне все равно, если запрос иногда не срабатывает. Кажется, что он работает нормально (см. Ниже), но я обеспокоен тем, что он связывает ресурсы в фоновом режиме, ожидая ответа, который никогда не будет использоваться.
Здесь код:
httpRequest = WebRequest.Create(externalServerUrl);
httpRequest.Method = "POST";
httpRequest.ContentType = "application/x-www-form-urlencoded;charset=utf-8";
bytedata = Encoding.UTF8.GetBytes(urlEncodedUserInput);
httpRequest.ContentLength = bytedata.Length;
requestStream = httpRequest.GetRequestStream();
requestStream.Write(bytedata, 0, bytedata.Length);
requestStream.Close();
Довольно стандартный материал, но обычно на этом этапе вы вызываете httpRequest.getResponse() или httpRequest.beginGetResponse(), если хотите получить асинхронный ответ, но это не кажется необходимым в моем сценарии.
Я поступаю правильно? Должен ли я вызвать httpRequest.Abort() для очистки или может ли это предотвратить отправку запроса при медленном соединении?