Den eksterne serveren returnerte en feil: (411) Lengde kreves

Mens vi laster opp bilder ved hjelp av Coreservice StreamUploadClient.UploadBinaryContent-metoden får vi feilen nedenfor. «Den eksterne serveren returnerte en feil: (411) Lengde kreves.» Gi hjelp.

Takk, Prasanna

Kommentarer

  • Bruker du kjernetjenesteklienten? Eller har du generert en selv?

Svar

HTTP-status 411 (kreves lengde) blir vanligvis hevet når du gjør et innlegg, men har ikke spesifisert størrelsen på forespørselens brødtekst (dvs. lengden på innholdet du lagrer).

Siden du ikke la ut koden din, kan jeg ikke gi deg et mer spesifikt forslag enn: se på egenskapene til klassen du bruker for å gjøre forespørselen. Hvis du for eksempel bruker et HttpWebRequest -objekt, er det et ContentLength -egenskap som du skal angi til antall byte i filen du laster opp.

Svar

I applikasjonen din, se på å øke tidsavbrudd og maxRequestLength. Her «er et eksempel på web.config

<system.webServer> <directoryBrowse enabled="true"/> <security> <requestFiltering> <requestLimits maxAllowedContentLength="4000000000" maxUrl="10999" maxQueryString="9999"/> </requestFiltering> </security> </system.webServer> 

Kommentarer

  • Takk Robert, hvor skal vi nevne disse innstillingene hvis vi bruker app.config for konsollapplikasjon
  • Jeg håper du kan legge til disse innstillingene i IIS også, og det vil ta vare på de interne detaljene for deg
  • Hei Robert, fortsatt problemet fortsetter, vi bruker streamUpload_basicHttp og konfigurasjonen nedenfor < binding name = " streamUpload_basicHttp " maxReceivedMessageSize = " 2147483647 " maxBufferSize = " 2147483647 " transferMode = " StreamedRequest " messageEncoding = " Mtom " openTimeout = " 05:00:00 " sendTimeout = " 05:00:00 " motta Timeout = " 05:00:00 " closeTimeout = " 05:00:00 " > < leser Kvoter maxArrayLength = " 2147483647 " maxBytesPerRead = " 2147483647 " maxDepth = " 2147483647 " maxNameTableCharCount = " 2147483647 " maxStringContentLength = " 2147483647 " / > < / binding >

Svar

hvis du ikke er sikker på hvordan du konfigurerer innbindingskonfigurasjonen i web / app-konfigurasjonsfil, kan du også legge til konfigurasjonen på ur-koden direkte se koden nedenfor.

BasicHttpBinding basicHttpBinding = new BasicHttpBinding { MaxReceivedMessageSize = 10485760, ReaderQuotas = new System.Xml.XmlDictionaryReaderQuotas { MaxStringContentLength = 10485760, MaxArrayLength = 10485760 }, MessageEncoding = WSMessageEncoding.Mtom, Security = new BasicHttpSecurity { Mode = BasicHttpSecurityMode.None, } }; EndpointAddress remoteAddress = new EndpointAddress("http://domain paths/CoreService2011.svc/streamUpload_basicHttp"); StreamUploadClient client = new StreamUploadClient(basicHttpBinding, remoteAddress);

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *