c# – 我如何调查WCF通过GET提出400个错误请求?
发布时间:2020-12-15 08:01:59 所属栏目:百科 来源:网络整理
导读:以下WCF端点与WCF测试客户端一起正常工作: [OperationContract][WebGet(ResponseFormat = WebMessageFormat.Xml,BodyStyle = WebMessageBodyStyle.Bare,UriTemplate = "listflaggedassets/{platform}?endpoint={endpoint}pid={portalid}processCode={proces
以下WCF端点与WCF测试客户端一起正常工作:
[OperationContract] [WebGet(ResponseFormat = WebMessageFormat.Xml,BodyStyle = WebMessageBodyStyle.Bare,UriTemplate = "listflaggedassets/{platform}?endpoint={endpoint}&pid={portalid}&processCode={processCode}&index={index}&limit={limit}")] AssetList ListFlaggedAssets(short processCode,string platform,string endpoint = "null",string portalId = "null",int index = 0,int limit = 12); 但是,当我尝试导航到URL时http://localhost/DigitalREST/XosAssets.svc/listflaggedassets/SEC?endpoint = superfan& pid = 0& processCode = 0& index = 0& limit = 20我得到400坏请求. 我似乎无法找到任何方法来弄清楚为什么我收到一个错误的请求,并附加到IIS进行调试不会中断任何异常. 如何调查错误请求的原因? 解决方法
您可以启用跟踪并使用
Service Trace Viewer
将其放入app.config(日志源taken from this answer): <system.diagnostics> <sources> <source name="System.ServiceModel" switchValue="Information,ActivityTracing" propagateActivity="true" > <listeners> <add name="xml"/> </listeners> </source> <source name="System.ServiceModel.MessageLogging"> <listeners> <add name="xml"/> </listeners> </source> <source name="myUserTraceSource" switchValue="Information,ActivityTracing"> <listeners> <add name="xml"/> </listeners> </source> </sources> <sharedListeners> <add name="xml" type="System.Diagnostics.XmlWriterTraceListener" initializeData="TraceLog.svclog" /> </sharedListeners> </system.diagnostics> 然后,在Service Trace Viewer中打开TraceLog.svclog.它可能无法确切地告诉您发生了什么,但它将提供有关流量和异常本身的详细信息. 您可能还想检查在调试器中启用的异常.在Visual Studio中,转到Debug – >例外并检查您是否选中了正确的框架. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |