Soru Proxy Arkasında NuGet


NuGet'in 1.4 sürümünden beri proxy ayarları yapılandırmasına izin verdiğini düşünüyorum. Ancak, herhangi bir komut satırı örneği bulamıyorum.

Bazı yapıları çalıştırmaya çalışıyorum ve NuGet bağlanamıyor.

Komut satırında proxy ayarlarını nasıl yapılandırabilirim?


76
2018-02-10 17:34


Menşei


Proxy sorunları ile karşılaşan diğer kullanıcıların yararı için: NuGet iletiyi görüntülediğinde proxy olabileceğini biliyorsunuz: "Uzak ad çözümlenemedi: 'nuget.org'" - pduncan
Kontrol etmek için dikkatli olun http_proxy ve https_proxy ortam değişkenleri ve sistem proxy ayarlarınız - Colonel Panic
Github'da bunun için bir sorun var: github.com/NuGet/Home/issues/458 - thekip


Cevaplar:


İşte bu çalışmayı NTLM kimlik doğrulamasını kullanan şirket proxy'mle yapmak için yaptığım şey. indirdim NuGet.exe ve sonra aşağıdaki komutları çalıştırdım ( bu tartışma CodePlex'te):

nuget.exe config -set http_proxy=http://my.proxy.address:port
nuget.exe config -set http_proxy.user=mydomain\myUserName
nuget.exe config -set http_proxy.password=mySuperSecretPassword

Bu benim için aşağıdakileri koydu NuGet.config da yerleşmiş %appdata%\NuGet (hangi eşleşir? C: \ Users \ KullanıcıAdım \ AppData Roaming \ Windows 7 makinemde):

<configuration>
    <!-- stuff -->
    <config>
        <add key="http_proxy" value="http://my.proxy.address:port" />
        <add key="http_proxy.user" value="mydomain\myUserName" />
        <add key="http_proxy.password" value="base64encodedHopefullyEncryptedPassword" />
    </config>
    <!-- stuff -->
</configuration>

Bu arada, bu sorun, yalnızca ilk defa Visual Studio'da paket kaynağına bastığımda NuGet ile sorunu çözdü.

Bu yaklaşımı deneyen bazı kişilerin, http_proxy.password komut satırından anahtar veya yapılandırma dosyasındaki gerçeği sonra silme ve hala proxy genelinde NuGet işlevi olabilir.

Ancak, eğer bulursanız şart NuGet yapılandırma dosyasında şifrenizi belirtin, Proxy kimlik bilgileriniz de ağ kimlik bilgilerinizse, ağ girişinizi değiştirdiğinizde komut satırından NuGet yapılandırmasında saklanan parolayı güncellemeniz gerektiğini unutmayın..


147
2018-03-17 17:34



Benim durumumda, http_proxy.password Anahtar tamamen ve kimliği doğrulanmış kimlik bilgilerimi iletmek için mutlu görünüyordu. Bu, şifreyi sık sık değiştirme ihtiyacını ortadan kaldırır. - Sir Crispalot
Teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler, teşekkürler , teşekkür ederim.... - lmsasu
Uyarı Arcain tarafından önerilen yapılandırmayı kullandığınızda dikkatli olun. Windows parolanızı değiştirdiğinizde, yapılandırma dosyasındaki şifreyi değiştirdiğinizden emin olun. Windows hesabım, şirket politikasına göre parola değiştirildikten sonra rasgele kilitlendi. Bu yapılandırma girişinin bu sorunlara neden olduğunu anlamak birkaç saatimi aldı. En iyi seçenek basitçe http_proxy.password @Sir Crispalot tarafından önerilen anahtar - A J Qarshi
Sir Crispalot'un bahsettiği şeyi deneyin ve http_proxy.password anahtarını kaldırın. Bu, bazı insanlar için çalıştı ve NuGet yapılandırma dosyasındaki şifreyi değiştirmek zorunda kalmamasına izin verdi. - arcain
Burada başka bir zafer - bu ayarları kullanmak ve şifre anahtarını atlamak, NTLM kimlik doğrulaması ile şirket proxy'imin arkasında benim için çalıştı. - Cᴏʀʏ


Belki bunu deneyebilirsin. devenv.exe.config

<system.net>
    <defaultProxy useDefaultCredentials="true" enabled="true">
        <proxy proxyaddress="http://proxyaddress" />
    </defaultProxy>
    <settings>
        <servicePointManager expect100Continue="false" />
        <ipv6 enabled="true"/>
    </settings>
</system.net>

Onu buldum NuGet Sorun izleyici

NuGet + ağ sorunları hakkında başka değerli yorumlar da vardır.


19
2018-02-28 14:13



ama bu devenve.exe'nin (Visual Studio olan) kurulduğunu varsayar. - Kat Lim Ruiz
Çalışmasını sağlamak için bu ayarı kaldırmak zorunda kaldım, böylece IE'nin proxy ayarlarını izler. - Rosdi Kasim


Sadece nuget'in https versiyonunu kullanıyorsanızhttps://www.nuget.org), değerleri https ile ayarlamanız gerektiğini unutmayın.

  • https_proxy
  • https_proxy.user
  • https_proxy.password

8
2018-05-22 10:19



Arcains rehberini takip edip https kullanarak https şifresi nuget.config dosyasında düz metin - dmce
Nekro'ya değil, ama bu tamamen benim sorunumu çözdü. Teşekkürler! - Bcbury
Bu sorunu çözdü, daha fazla ayrıntı burada github.com/NuGet/Home/issues/5980. - jpierson
Bunu işaret ettiğin için teşekkür ederim, çok sinirlendim. - MarkyMarksFunkyBunch
Bu nedenle, nuget'in https versiyonunu kullanıyorsak, proxy adresini ayarlamak için 'http' kullanamaz mıyız? - coder kemp


Yanlış olabilirdim ama IE'nin proxy ayarlarını kullandığını düşündüm.

Giriş yapmanız gerektiğini görürse, bir iletişim kutusu açar ve bunu yapmanızı ister (giriş yapın).

Lütfen bunun açıklamasına bakın -> http://docs.nuget.org/docs/release-notes/nuget-1.5 


6
2018-02-28 14:06



Bunu yapar - bu yaklaşımdaki sorun, kurumunuzun grup politikasının IE ayarlarınızı, iş yerimde olduğu gibi, Nuget ile çalışmayanlara sürekli olarak geri almasıyla ortaya çıkar. - Xcalibur


VS2015'i kullanan herkese: "407 Proxy Kimlik Doğrulaması gerekli" hatasıyla karşılaşıyordum, bu da yapmamı kırdı. Birkaç saat araştırdıktan sonra, 'DownloadNuGet' hedefinin bir parçası olarak Nuget'i indirmeye çalışırken MSBuild kimlik bilgileri göndermiyor. Çözüm, aşağıdaki XML C: \ Program Files (x86) \ MSBuild \ 14.0 \ Bin \ MSBuild.exe.config içine eklemek oldu. <configuration> öğe:

<system.net>
            <defaultProxy useDefaultCredentials="true">
            </defaultProxy>
</system.net>

4
2018-04-11 17:45



Mükemmel, benim için çalıştı, güzel ve basit, teşekkürler. - DaveInCaz


Belki bu başka birine yardımcı olur. Benim için çözüm, Visual Studio'da (2015/2017) NuGet ayarlarını açmak ve yeni bir besleme URL'si eklemek oldu: http://www.nuget.org/api/v2/.

Proxy ile ilgili ayarları değiştirmem gerekmedi.


2
2018-03-17 18:35





Aynı "nuget için proxy" için başka bir tat: alternatif olarak nuget proxing ayarlarınızı kemancı. Cmd'nin altında, kullanıcı için varsayılan nuget yapılandırma dosyasında proxy ayarlarını kaydeder% APPDATA% \ NuGet \ NuGet.Config

nuget config -Set HTTP_PROXY =http://127.0.0.1:8888

İnternete ulaşmak için nugete ihtiyaç duyduğunuzda, varsayılan port 8888'i dinlerken daha fazla Fiddler'ı açın.

Bu konfigürasyon, pasif değişikliklere karşı hassas değildir çünkü kemancı, sizin için akış proxy'si ile herhangi bir kimlik doğrulamasını çözecektir.


1
2017-07-30 14:00