Я не первый раз использую этот метод для отправки запроса POST, и у меня никогда не возникало проблем:
public static Stream SendPostRequest(Uri uri, byte[] postData)
{
var request = WebRequest.Create(uri);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = postData.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(postData, 0, postData.Length);
requestStream.Close();
return request.GetResponse().GetResponseStream();
}
По запросу. GetRequestStream () Я получаю System.Net.WebException: базовое соединение было закрыто: при отправке произошла непредвиденная ошибка.
Еще интереснее то, что он отлично работает на некоторых компьютерах, но не работает на моей машине (Windows 7 Beta) и на производственном сервере (Windows Server 2008). Дополнительная информация:
Работает - Windows Xp - .NET 2.0
Работает - Windows Xp - .NET 3.5
Работает - Windows Server 2003 - .NET 3.0
Не работает - Windows Vista - .NET 3.5
Не работает - Windows Server 2008 - .NET 3.5
Не работает - Windows 7 Beta - .NET 3.5 SP1
Попробовал:
- Куча вещей из здесь , ничего не помогло.
- Использование WebClient , ничего не изменилось.
- Настроил эти опции , но не заметил заметной разницы.
- Пробовал WireShark . Очень хороший инструмент.
[решаемая. Любопытное]
Я забыл упомянуть, но Ури был https ... Я попробовал http, и это сработало. Не могу поверить, я не пробовал раньше ...
Тем не менее, я был бы признателен, если бы кто-то пролил свет на всю эту ситуацию.