Visual studio 2015 visual studio 2015 vshub正在向fiddler发送垃圾邮件
我读过: 和 我宁愿不禁用vshub;我只是想让它更安静,当我使用小提琴。现在它会把其他的东西都扔掉,我不能做一般的调试Visual studio 2015 visual studio 2015 vshub正在向fiddler发送垃圾邮件,visual-studio-2015,fiddler,Visual Studio 2015,Fiddler,我读过: 和 我宁愿不禁用vshub;我只是想让它更安静,当我使用小提琴。现在它会把其他的东西都扔掉,我不能做一般的调试 有人知道解决办法吗?我可以阻止vshub在fiddler中出现而不阻止locahost的其余部分吗 这是一个相对较新的问题,因为System.NET过去常常忽略本地主机的代理设置,因此Fiddler在默认情况下不会看到流量()-请参阅底部部分 现在情况似乎不再是这样了,所以我希望更多的人会有同样的问题。Fiddler支持多种过滤请求的方法,但客户端无法控制任何请求(这可能是
有人知道解决办法吗?我可以阻止vshub在fiddler中出现而不阻止locahost的其余部分吗 这是一个相对较新的问题,因为System.NET过去常常忽略本地主机的代理设置,因此Fiddler在默认情况下不会看到流量()-请参阅底部部分 现在情况似乎不再是这样了,所以我希望更多的人会有同样的问题。Fiddler支持多种过滤请求的方法,但客户端无法控制任何请求(这可能是好的,因为您不希望恶意软件排除其流量)。在这种情况下,最合适和最简单的机制可能是为包含localhost或vshub的任何url设置筛选器。您可以通过以下方式实现:
此筛选器将持续存在,因此如果您关闭Fiddler并稍后再次启动它,它仍将被设置。解决此问题的最简单方法是在Fiddler中设置筛选器。在OnBeforeResponse中,将第二个if添加到vshub主机/端口:
static function OnBeforeResponse(oSession: Session) {
if (m_Hide304s && oSession.responseCode == 304) {
oSession["ui-hide"] = "true";
}
if (oSession.HostnameIs("localhost:49155")){
oSession["ui-hide"] = "hiding vshub"; // String value not important
}
}
这些请求似乎来自调试时运行的诊断工具窗口。似乎它们提供了内存使用和CPU使用的监控信息 如果不想查看使用情况信息,可以通过在“诊断工具”对话框中禁用内存/CPU监控来停止请求
- 打开诊断工具窗口(调试->窗口->显示诊断工具)
- 单击“选择工具”下拉列表,取消检查内存使用情况和CPU使用情况李>
- 停止调试,下次开始调试时,您将不再看到向vshub发出的请求
首先,在Fiddler UI中,转到
规则
自定义规则
。搜索onbeforesponse
功能。应该是这样的:
static function OnBeforeResponse(oSession: Session) {
if (m_Hide304s && oSession.responseCode == 304) {
oSession["ui-hide"] = "true";
}
}
static function OnBeforeResponse(oSession: Session) {
if (m_Hide304s && oSession.responseCode == 304) {
oSession["ui-hide"] = "true";
}
if (oSession.HostnameIs("localhost:49155")){
oSession["ui-hide"] = "hiding vshub"; // String value not important
}
}
现在在现有块之后添加以下if
块(如果不同,则替换您的vshub主机/端口):
您的onbeforesponse
函数现在应该如下所示:
static function OnBeforeResponse(oSession: Session) {
if (m_Hide304s && oSession.responseCode == 304) {
oSession["ui-hide"] = "true";
}
}
static function OnBeforeResponse(oSession: Session) {
if (m_Hide304s && oSession.responseCode == 304) {
oSession["ui-hide"] = "true";
}
if (oSession.HostnameIs("localhost:49155")){
oSession["ui-hide"] = "hiding vshub"; // String value not important
}
}
以上这些对我来说都不起作用。它似乎关闭了本地主机的所有fiddler监控 明智的谷歌搜索给了我另一个解决方案——通过在OnBeforeRequest部分的底部添加以下内容来阻止端口:
if (oSession.host=="localhost:49155"){
oSession["ui-hide"] = "true";
}
这似乎阻止了在Fiddler中报告端口,而不会中断进一步的本地主机通信。对于我来说,停止向Fiddler 4发送“垃圾邮件”的修复方法,而不是我本可以选择使用Fiddler过滤器,是更改Visual Studio 2015选项:
Visual Studio 2015->工具->选项->调试->常规->取消选中/禁用“调试时启用诊断工具”
VSHUB.exe服务必须是在调试时协助诊断工具的服务,并持续ping您正在调试的网站/webapi/web应用程序。我不需要调试。诊断工具,所以我只是在VisualStudio中禁用了它
关于禁用VSHUB.exe,我很想这么做,直到我从微软的某个人那里了解到,最好不要禁用它,以获得更好的Visual Studio 2015体验,他们会在Visual Studio中添加新功能,随着时间的推移使用VSHUB.exe:
这是隐藏vshub流量的一个更容易的替代方法 转到工具>小提琴手选项>连接选项卡并添加
http://localhost:49155
转到旁路列表。这将跳过发布到该URL的所有流量
*编辑:添加到旁路列表后,可能需要重新启动Fiddler。
您可以通过转到工具来禁用它们➜ 选项,然后执行以下步骤:
谢谢,@Anson。隐藏这些大量请求将使Fiddler再次可用。当然,这仍然是一个严重的问题。它还让您想知道为什么VisualStudio或其任何后续相关流程会首先提出这些请求(反驳)。如果您对此也感到不方便,请添加对和/或通过的投票。如果您想隐藏其他请求,如browserlink,您可以使用“如果URL包含则隐藏”框中的| |运算符进行添加。@Moriarty
re:…为什么Visual Studio提出这些请求
…嗯,这是因为进程通过环回适配器上的HTTP相互通信。这个流量已经产生了一段时间了;最近它被改变了,默认情况下它是可见的HTTP代理…所以我不知道为什么你会认为这是一个bug。这是Visual Studio 2015中新的远程调试工具的副作用,我敢肯定。特别是在苹果设备上的Cordova跨平台调试方面,我敢打赌。他们可能以一种方式构建了这些更改,允许他们在以后将其扩展到其他平台,从而实现了全局更改。这不是正确的解决方案。它只是隐藏了问题。下面的解决方案在VS中调试时删除诊断工具才是真正的解决方案。这是正确的解决方案。它立即清除了所有的垃圾信息。现在我不关心CPU/内存,我需要我的小提琴手留在这里