Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#-连接到Http请求_C#_Silverlight_Http Headers_Httprequest - Fatal编程技术网

C#-连接到Http请求

C#-连接到Http请求,c#,silverlight,http-headers,httprequest,C#,Silverlight,Http Headers,Httprequest,我有一个应用程序,其中库正在发出Http请求。我无法控制这一切。为了进行身份验证,我需要连接到请求并在请求中放置一个头。是否有一种方法可以连接到事件,以便查看传出的请求,并在将它们发送到服务器之前对它们进行潜在的更改 我目前正在使用Silverlight,但是.NET、UWP或.NET Core中的任何示例都将非常好。如果应用程序使用浏览器,您可以使用fiddler捕获网络流量,或者可能使用浏览器的F12开发者工具(网络选项卡) 如果您需要在C#(Windows应用程序)级别捕获和修改外部组件的

我有一个应用程序,其中库正在发出Http请求。我无法控制这一切。为了进行身份验证,我需要连接到请求并在请求中放置一个头。是否有一种方法可以连接到事件,以便查看传出的请求,并在将它们发送到服务器之前对它们进行潜在的更改


我目前正在使用Silverlight,但是.NET、UWP或.NET Core中的任何示例都将非常好。

如果应用程序使用浏览器,您可以使用fiddler捕获网络流量,或者可能使用浏览器的F12开发者工具(网络选项卡)

如果您需要在C#(Windows应用程序)级别捕获和修改外部组件的请求,这就有点棘手了。你需要在低水平上工作;例如,如果应用程序位于IIS上,则可以编写ISAPI筛选器并实现HttpHandler来覆盖和修改请求

如果它是一个windows服务或只是一个普通的exe,那么您的选项就比较有限。请进一步解释

请看这篇文章:


是的。我知道。但是,我需要在C#级别上这样做。这并不是要看到流量以一种特殊的方式来回移动。库正在发送没有身份验证标头的请求。图书馆基本上是错的。我想知道Silverlight或.NET是否有一种方法能够连接到Http请求事件以便能够操纵它们。我知道这是一个很长的机会,因为它可能是一个安全漏洞,但只是把它扔出去…谢谢。这次你们更接近了,但ISAPI过滤器不是我的意思。我不想在服务器端截取数据包。我试图截获一个将在客户端发送之前发送的请求(确切地说是Silverlight)。Pcap和SharpPcap看起来很有趣。我将研究这些。准确地说,我想要拦截的请求来自Silverlight调用应用程序。Current.CheckAndDownloadUpdateAsync()。它只是以普通文件的形式从服务器请求Xap包,但如果没有用于身份验证的标头,服务器将不会接受该请求。您有权访问此方法(Application.Current.CheckAndDownloadUpdateAsync())吗?如果是这样,您可以将一个事件委托连接到它,并通过订阅该事件返回一个修改的请求对象,该对象在头上操作,进行必要的更改。这与OWIN等身份验证框架的工作原理类似,它们向主机头添加内容。您可以创建一个silverlight项目,该项目使用您要覆盖的silverlight控件,然后以这种方式拦截该方法。或者,即使是WPF应用程序也可能使用silverlight控件,这将为您提供更大的控制。我想我的问题是你有源代码吗?