Install the command-line nuget.exe client from https://nuget.org/nuget.exe
Then run nuget sources
to view the registered endpoints. This will typically list something like this:
D:\>nuget sources
Registered Sources:
1. https://nuget.org/api/v2/ [Enabled]
https://nuget.org/api/v2/
From this you can see the base endpoints which are likely being used within Visual Studio or the PS tools.
You can also use an HTTP inspector like Fiddler to capture the exact calls from the nuget client (whether command-line or Visual Studio) to the nuget.org endpoint, resulting in something like this:
In the 'Process' column you can see the calls originating from nuget.exe. To see the exact URLs you can configure Fiddler to intercept and decrypt HTTPS, or alternatively specify a non-HTTPS Source like this nuget list log4net -Source http://nuget.org/api/v2/
which results in Fiddler being able to see the plain HTTP responses:
In this case, one of the calls from nuget.exe was:
GET http://www.nuget.org/api/v2/Search()?$filter=IsLatestVersion&$orderby=Id&$skip=0&$top=30&searchTerm='log4net'&targetFramework=''&includePrerelease=false HTTP/1.1
The nuget clients make several calls to retrieve even just a package list but AFAIK, the calls are all standard HTTP GET
, POST
, etc., not WebDAV calls, so there should be no reason why these calls should not work with a proxy as long as the nuget.org site itself is not blocked.