Visual Studio错误:(407:需要代理身份验证)




visual-studio proxy (8)

我是一个需要凭据的公司代理服务器。 我一直在尝试使用MS Visual Studio Pro 2012在过去2小时内连接到TFS服务器(在tfspreview.com上),但没有成功。 每次尝试都遇到此错误:

当我启动它时,集成的浏览器工作正常。 它询问我的代理登录凭据,一旦输入,我就去了。 所以这里有一些不同的连接方法。

我还导航到TFS服务器,在我的项目中,我单击了打开Visual Studio的新实例 。 新实例在输出中失败并显示此消息:

HTTP code 407: Proxy Authentication Required

我尝试过在另一篇文章中找到的所有内容都无济于事。 我已经对devev.exe.config进行了每次编辑和组合编辑, 我没有成功。

可能是2010版本与2012专业版有所不同吗? 我正在运行Windows 7。

任何人都能解释一下吗? 请?

注意:此问题也适用于Visual Studio 2013


使用IDE配置:

  1. 打开Visual Studio 2012,单击文件菜单栏中的“ 工具 ”,然后单击“ 选项”

  2. 在“ 选项”窗口中,展开“ 源代码管理”选项,单击“ 插件选择” ,并确保将“当前源代码管理”插件设置为“Visual Studio Team Foundation Server”。

  3. 接下来 ,单击“源代码管理”下的“Visual Studio Team Foundation Server”选项,然后执行以下步骤:选中“ 使用代理服务器进行文件下载” 。 输入首选Team Foundation Server 2010代理服务器的主机名。 将端口设置为443.选中使用SSL加密(https)进行连接

  4. 单击“确定”按钮。

使用exe.config:

修改devenv.exe.config,其中IDE可执行文件是这样的:

<system.net> 
  <defaultProxy>  
   <proxy proxyaddress=”http://proxy:3128”
     bypassonlocal=”True” autoDetect=”True” /> 
   <bypasslist> 
   <add address=”http://URL”/>  
  </bypasslist> 
 </defaultProxy> 

在proxyaddress声明您的代理并记住bypasslist url和ip地址将从代理流量中排除。

然后重新启动visual studio以更新更改。


经过三天的搜索,解决方案落到了我的腿上。

现在,发生的事情是VS尝试进行自动更新但被代理停止了。 我被提示输入凭据并进行了检查。

我被激发了检查TFS服务器连接只是为了踢,以防提示可能建立连接TFS服务器隧道通过...瞧! 有效!

解决方法:

  1. 打开工具>扩展和更新
  2. 单击左侧菜单中的更新....
  3. 屏幕上会显示失败通知,并提供输入凭据的链接。 单击它并输入它们。
  4. 关闭扩展管理器。
  5. 单击TEAM>连接到TFS服务器...
  6. 输入地址,它会工作!

注意:有些人建议通过打开集成浏览器来尝试使用代理凭据提示,但这不起作用。 我不是专家,但我认为他们通过Windows本身的不同渠道进行连接。

此命令无需编辑devenv.exe.config

每次需要连接到服务器时都必须手动检查更新是一件痛苦的事情,但这是我提出的最佳解决方案,直到Microsoft通过更新或将来的版本永久修复此问题。


单击[Sync]按钮(使用MS Git Provider)时出现“authenticationrequired”(407)错误,这对我有用(VS 2013):

.. \ Program Files \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe.config

  <system.net>
    <defaultProxy useDefaultCredentials="true" enabled="true">
      <proxy proxyaddress="http://username:[email protected]:port" />
    </defaultProxy>
    <settings>
      <ipv6 enabled="false"/>
      <servicePointManager expect100Continue="false"/>
    </settings>
  </system.net>

我认为我的魔力是将'ipv6'设置为'false' - 不确定为什么(在我的情况下可能只支持IPv4)。 我尝试了其他方法,如上所示,但我移动了“defaultProxy”之后的“设置”部分,并更改了“ipv6”,它与我的登录添加完美配合(我在其他所有答案中尝试过的其他方式对我来说都失败了)。

编辑:刚刚找到另一种解决方法(不更改配置文件)。 出于某种原因,如果我禁用Windows代理(在我的情况下它是PAC文件的URL),请再试一次(它将失败),并重新启用代理,它可以工作。 似乎在内部缓存一些在我这样做时被重置的东西(至少在我的情况下)。


在Visual Studio 2013和Microsoft Test Manager(MTM)中为我工作的解决方案是确保devenv.exe.config和mtm.exe.config都包含此配置部分:

<system.net>
    <settings>
        <ipv6 enabled="true"/>
        <servicePointManager expect100Continue="false"/>
    </settings>
    <defaultProxy useDefaultCredentials="true" enabled="true">
        <proxy usesystemdefault="True" />
    </defaultProxy>
</system.net>

MTM没有system.net设置,整个部分在关闭xml标记</appSettings>立即添加。


情况本质上是VS没有设置通过代理来获取它试图获得的资源(当使用FTP时)。 这是你得到的407错误的原因。 我对此做了一些研究,你可以尝试一些调试方法。 从根本上说,这是产品中的一个有缺陷的领域,应该在以后的版本中进行审查。

以下是一些解决方案,按照不太复杂到更复杂的顺序:

  • 如果可能,请不要将代理用于您尝试访问的指定域。
  • 正确设置代理设置Internet Explorer(即使您不使用它)会影响​​系统范围的设置。 甚至可以通过Internet Explorer连接到互联网并保持连接,然后返回并再次尝试从VS
  • devenv.exe.config添加<servicePointManager expect100Continue="false" /> ,如下所示:
  • <configuration>
      <system.net>
        <settings>
          <servicePointManager expect100Continue="false" />
        </settings>
      </system.net>
    </configuration>
    

  • 添加defaultProxy设置如下:
  • <system.net>
      <defaultProxy useDefaultCredentials="true" enabled="true">
          <proxy proxyaddress="http://your.proxyserver.ip:port"/>
      </defaultProxy>
      <settings>
      ...
    

  • 或者,您可以尝试告诉它使用系统默认值(应该从Internet Explorer中提取),如下所示:

    <defaultProxy useDefaultCredentials="true" enabled="true">
        <proxy usesystemdefault="True" />
    </defaultProxy>
    

  • 有一个较旧的解决方案,涉及here创建一个插件
  • 希望这能为您解决。


    我的Visual Studio Team Services帐户(以前称为Visual Studio Online,Team Foundation Service)遇到了同样的错误。

    我只需使用VS 2013“连接到Team Foundation Server”窗口输入凭据,然后将其连接到Visual Studio Team Services Team Project。 它以这种方式工作。


    我试图将Visual Studio 2013连接到Visual Studio Team Services,并且是在公司代理之后。 我通过添加以下内容使VS使用默认代理设置(在IE的连接设置中指定):

    <system.net> <defaultProxy useDefaultCredentials="true" enabled="true"> <proxy usesystemdefault="True" /> </defaultProxy> <settings> <ipv6 enabled="true"/> </settings> </system.net>

    到.. \ Program Files \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe.config(以管理员身份运行记事本并从那里打开文件)


    我遇到了同样的问题,所发布的解决方案都没有奏效。 对我来说,解决方案是:

    • 打开Internet Explorer>工具> Internet选项
    • 单击连接>局域网设置
    • Untick'自动检测设置'和'使用自动配置脚本'

    这阻止了代理的使用,然后我可以毫无问题地进行身份验证。





    proxy-authentication