문제

이 방법을 사용하여 게시물 요청을 보내는 것은 이번이 처음이 아니며 아무런 문제가 없었습니다.

    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();
    }

request.getRequestStream ()에서 system.net.webexception을 받고 있습니다. 기본 연결이 닫혔습니다. Send에서 예기치 않은 오류가 발생했습니다.
더 흥미로운 점은 일부 컴퓨터에서 완벽하게 작동하지만 내 컴퓨터 (Windows 7 베타) 및 프로덕션 서버 (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 베타 - .NET 3.5 SP1

시험을 마친:

  • 많은 것들 여기, 아무것도 도움이되지 않았습니다.
  • 사용 웹 클라이언트, 아무것도 바뀌지 않았다.
  • 이것을 조정합니다 옵션, 그러나 주목할만한 차이는 눈치 채지 못했습니다.
  • 시험을 마친 Wireshark. 아주 좋은 도구.

해결되었습니다. 킨다
나는 언급하는 것을 잊었지만 Uri는 HTTPS였습니다 ... HTTP를 시도해 보았습니다. 믿을 수 없어, 나는 더 빨리 시도하지 않았다 ...
그럼에도 불구하고 누군가 가이 모든 상황에 빛을 비추는다면 감사하겠습니다.

도움이 되었습니까?

해결책

나의 첫 번째 공격 계획은 사용하는 것입니다 Wireshark 각 경우 네트워크 수준에서 무슨 일이 일어나고 있는지 확인합니다. 각 기계가 보내는 것을 확인하십시오.

또한 운영 체제 간의 차이점을 언급했지만 모두 동일한 버전의 .NET (아래로)가 설치되어 있습니까?

다른 팁

일을합니까? 아마도 프록시 구성 문제 일 것입니다 (proxycfg 등).

또한 - 물건을 단순화하려면 (미지수의 수를 줄이기) 사용을 고려하십시오. WebClient 게시물을 수행하려면 :

using (WebClient client = new WebClient())
{
    client.Headers.Add("content-type","application/x-www-form-urlencoded");
    client.UploadData(address, data);
    // or more simply
    client.UploadValues(address, nameValuePairs);
}

다음 옵션 중 하나 이상을 조정해보십시오.

  • Sendchucked
  • 허용
  • 트랜스퍼 인코딩

또한 다양한 구성으로 그들 사이의 차이점에 주목하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top