我有一个应用程序,其中库正在发出Http请求。我对此没有任何控制权。我需要挂钩请求并将标头放入请求以进行身份验证。有没有办法挂钩到一个事件,以便看到传出的请求,并可能在它们被发送到服务器之前改变它们?
我目前正在使用Silverlight,但.NET,UWP或.NET Core中的任何示例都会很棒。
答案 0 :(得分:1)
如果您的应用使用浏览器,您可以使用fiddler捕获网络流量或可能是浏览器的F12开发人员工具(网络标签)。
如果您需要在C#(Windows应用程序)级别捕获和修改外部组件的请求,则会更棘手。你需要在低水平工作;例如,如果应用程序位于IIS上,您可以编写ISAPI筛选器并使用HttpHandler来覆盖和修改请求。
如果它是一个Windows服务或只是一个普通的exe,你的选择更有限。请进一步解释。
看看这篇文章:
How to intercept packets sent by a application and check what they have?