Visual Studio 2015中的程序包管理器"407(需要代理身份验证)"

m.e*_*son 10 package-managers visual-studio nuget nugetgallery visual-studio-2015

我知道这是一个经常被问到的问题,但是经过几天的研究,我找不到这个特定问题的答案.


我有一个新的ASP.NET 5(Core 1.0)MVC模板,我试图添加一个包,但每次我进入包管理器输出:

Response status code does not indicate success: 407 (Proxy Authentication Required). 
Run Code Online (Sandbox Code Playgroud)

以及解决方案资源管理器顶部的以下内容:

在此输入图像描述

我的设置看起来很好,我可以在"管理解决方案包"屏幕中浏览包.

我知道我被要求提供凭证,所以我在哪里输入?另一方面,我机器上的所有其他应用程序都验证了互联网访问,那么我为什么要这样做呢?

任何想法/指针都非常受欢迎.

Visual Studio 2015 - 14.0.24720.00更新1 Visual Studio 2015的
NuGet包管理器 - 3.3.0.167


包管理器输出的顶部:

安装NuGet包AutoMapper.4.2.1.
成功将'AutoMapper 4.2.1'安装到CustomerPortal
==========完成==========
PATH =.\node_modules.bin;%PATH%; C:\ Program Files(x86 )\ Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Web Tools\External; C:\ Program Files(x86)\ Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Web Tools\External\git
C:\Users\medmondson.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin\dnx.exe"C:\ Users\medmondson.dnx\runtimes\dnx-clr-win-x86. 1.0.0-rc1-update1\bin\lib\Microsoft.Dnx.Tooling\Microsoft.Dnx.Tooling.dll"恢复"M:\ visual studio 2015\Projects\CustomerPortal\src\CustomerPortal"-f"C:\ Program文件(x86)\ Microsoft Web Tools\DNU"
Microsoft .NET开发实用程序Clr-x86-1.0.0-rc1-16231
获取https://www.nuget.org/api/v2/
GET http://packages.nuget .org/v1/FeedService.svc /
GET https://www.postsharp.net/nuget/packages/
为M:\ visual studio 2015\Projects\CustomerPortal\src\CustomerPortal\project.json恢复包
GET https:// www.nuget.org/api/v2/FindPackages ById()?ID = 'AutoMapper'
GET http://packages.nuget.org/v1/FeedService.svc/FindPackagesById()?id= 'AutoMapper'
GET https://www.postsharp.net/nuget/packages/ FindPackagesById()?id = 'AutoMapper'
警告:FindPackagesById:AutoMapper
发送请求时发生错误.
GET https://www.nuget.org/api/v2/FindPackagesById()?id= 'AutoMapper'
GET https://www.nuget.org/api/v2/FindPackagesById()?id= "System.Collections中.一成不变的"
GET http://packages.nuget.org/v1/FeedService.svc/FindPackagesById()?id= 'System.Collections.Immutable'
GET https://www.postsharp.net/nuget/packages/FindPackagesById() ?id = 'System.Collections.Immutable'
警告:FindPackagesById:AutoMapper
发送请求时发生错误.
GET https://www.postsharp.net/nuget/packages/FindPackagesById()?id='AutoMapper '
警告:FindPackagesById:AutoMapper
响应状态代码不表示成功:407(需要代理验证).

更新

我设法捕获了一个非工作请求(返回407)和一个工作请求,唯一的区别是代理授权头的内容更长.这表明代理身份验证确实存在,但它使用的是不同的协议.

小智 9

几个星期前我遇到了同样的问题.对我来说,它有助于在machine.config中添加以下内容(Windows/Microsoft.NET/Framework64/v4.0.30319/Config)

<system.net>
   <settings>
       <ipv6 enabled="True"/>
   </settings>
   <defaultProxy useDefaultCredentials="True" enabled="True">
       <proxy proxyaddress="http://your.proxyserver.ip:port"/>
   </defaultProxy>
</system.net>
Run Code Online (Sandbox Code Playgroud)


m.e*_*son 8

我不得不修改32位 machine.config(假设VS运行在32位)添加<system.net>部分但省略<defaultProxy>标记内的任何内容:

<system.net>
    <defaultProxy useDefaultCredentials="True" enabled="True" />
</system.net>
Run Code Online (Sandbox Code Playgroud)

根据MSDN:

如果defaultProxy元素为空,则将使用Internet Explorer中的代理设置.

这对我来说非常完美,因为我机器上的其他应用程序都可以工作 - 包括IE.

manchine.config位置(Win 7):%SYSTEMROOT%\ Microsoft.NET\Framework\v4.0.30319\Config\machine.config


注意

我解决了这个问题,感谢@ user3063127指向我正确的方向(你有一个upvote).据我所知,这只影响DNX项目的包恢复,并且可能在RC2发布时修复.