我正在使用WebClient.UploadString((进行API调用。它会引发异常,因为它是一个错误的请求。我在异常对象或 Web 客户端对象本身中找不到更多信息。但是,如果我使用 Fiddler 来监听请求,它会为我提供标题和正文信息的所有详细信息,因此我确切地知道原因。有没有办法从 UploadString(( 中检索这些信息?或者我应该使用其他方法(如 HttpRequest (来获取详细信息?谢谢!
您可以从 System.Net 命名空间使用 HttpWebRequest.GetResponse(( 方法。
您可以在官方 msdn 文档中找到一个示例:https://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.getresponse%28v=vs.110%29.aspx
另外:您可以捕获异常(从 UploadString 请求的 try-catch 中捕获(,并在收到任何其他错误时通过重新抛出异常来获取异常堆栈。
catch (Exception ex) { String.Format("Error occurred {0} - {1}",ex.Message,ex.ToString()); throw; }
您需要先记录异常,然后再重新引发它以获取相应的信息。如果不使用日志记录,则无需重新抛出。
注意:您还可以在"事件"菜单中查看使用 chrome://net-internals 版式网页发送的网站请求和标头。