2010-11-25 7 views
3

Ich versuche den Marketo SOAP Webservice über ASP.NET/C# aufzurufen. Ich habe erfolgreich die Referenz Web-Service und versuchte es mit dieser Codezeile aufzurufen:WebException: Der Server hat eine Protokollverletzung begangen. Section = ResponseStatusLine (Marketo SOAP API)

SuccessGetLead lead = service.getLead(paramsgetlead); 

Das Problem ist, ich diese Ausnahme auch erhalten:

[WebException: Der Server eine Protokollverletzung begangen . Section = ResponseStatusLine]

System.Web.Services.Protocols.WebClientProtocol.GetWebResponse (WebRequest Anfrage) +263

System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse (WebRequest Anfrage) +4

System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke (String methoden, Object [] Parameter) +172

com.marketo.soap.MktMktowsApiService.getLead (ParamsGetLead paramsGetLead) in C: \ Benutzer \ hubert.grininger \ AppData \ Local \ Temp \ Temporäre ASP.NET-Dateien \ dynaweb2007 \ 82e21235 \ d41bf12a \ App_WebReferences.liqikru c.7.cs: 206

_test_marketo.Page_Load (Object sender, EventArgse) in d: \ workspace_c \ dynaweb2007_test \ marketo.aspx.cs: 48

System.Web.Util.CalliHelper.EventArgFunctionCaller (IntPtr fp, Objekt o, Objekt t, EventArgse) +14

System.Web.Util.CalliEventHandlerDelegateProxy.Callback (Object sender, EventArgs e) +35

System.Web.UI.Control.OnLoad (EventArgs e) +99

System.Web.UI.Control.LoadRecursive() + 50

System.Web.UI.Page.ProcessRequestMain (Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627

Ich versuchte auch das Hinzufügen

<system.net> 
    <settings> 
     <httpWebRequest useUnsafeHeaderParsing = "true" /> 
    </settings> 
</system.net> 

aber, dass nicht auch nicht helfen.

Ich denke, die Anfrage wird nie an Marketo gesendet, aber der Fehler tritt bereits an meinem Ende.

Danke für jede Hilfe oder einen Hinweis.

Antwort

4

Gelöst. Problem war, dass die wsdl (von Marketo bereitgestellt) fälschlicherweise auf localhost als Webservice-Endpunkt hinwies. Ich programmiere programmgesteuert die URL über WebServiceObject.Url -Eigenschaft und es funktioniert jetzt.

+0

hatte ich das gleiche Problem – levi

+0

Same here.thanks –

3

Versuchen Sie einfach, HTTP/1.0 anstelle von HTTP/1 zu verwenden.1

Blick auf den folgenden Code

objWebRequest.ProtocolVersion = System.Net.HttpVersion.Version10; 

Es funktionierte für mich ;-)

Verwandte Themen