2012-11-26 2 views
3

사용자가 파일을 업로드 할 수있는 WCF 서비스를 만들려고합니다. 파일의 크기는 최대 2MB로 제한됩니다. 바이트를 서비스에 전달하고 있지만 다음 오류가 계속 발생합니다. System.Net.WebException : 원격 서버에서 오류를 반환했습니다. (413) 요청 엔터티가 너무 큽니다.(413) 요청 엔터티가 너무 커서 WCF 오류가 발생했습니다.

1kb와 10kb 파일을 보낼 수 있지만 82kb와 같이 큰 파일을 시도하면 오류가 발생합니다. 이전 게시물을 살펴 봤지만 잘못하고있는 부분을 찾을 수없는 것 같습니다. 설정에 조정을 시도했는데 최대 값을 설정하면 도움이 될지 알 수는 있지만 아무 것도 작동하지 않습니다. 지금까지. 누군가가 내가 무엇을보고 무엇인가 놓치고 있는지 또는 IIS (7.5)와 관련이있는 것이 내 web.config가 아닌지 확인할 수 있습니까?

또한 SSL을 사용하지 않습니다.

WCF의 설정 :

 
    

    <services> 
    <service name="DSLDService.DSLDService"> 
    <endpoint binding="basicHttpBinding" bindingConfiguration="" 
    contract="DSLDService.IDocument" /> 
    </service> 
    </services> 
 

웹 응용 프로그램 설정 :

 
    

    <endpoint address="http://xxx/DSLDService/DSLDService.svc" 
    binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IDocument" 
    contract="DSLDServiceReference.IDocument" name="" /> 
 

 
    

    <binding name="BasicHttpBinding_IDocument" closeTimeout="00:01:00" 
    openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" 
    allowCookies="false" bypassProxyOnLocal="false" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" 
    maxReceivedMessageSize="2147483647" useDefaultWebProxy="true"> 
    <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" /> 
    </binding> 
 

감사합니다.

+0

클라이언트에서도 동일한 readerQuotas 값을 사용합니까? – Rajesh

+0

가능한 복제본 [maxReceivedMessageSize 고정하지 않음 413 : 요청 엔터티가 너무 큼] (http://stackoverflow.com/questions/14636407/maxreceivedmessagesize-not-fixing-413-request-entity-too-large) –

답변

1

최대 클라이언트 크기 (최대 64KB)를 정의하는 경우 클라이언트뿐만 아니라 클라이언트도 바인딩 구성이 필요합니다.

+0

귀하의 의견을 정확히 말씀해 주시고 귀하가 서비스 설정 도구를 사용하여 변경 작업을 해본 적이 있습니까? http://msdn.microsoft.com/en-us/library/ms732009.aspx –

관련 문제