自己的Nuget服务器-位于''的V2提要返回了意外的状态码'404 Not Found'

时间:2019-12-09 09:53:34

标签: visual-studio nuget http-status-code-404 nuget-package nuget-server

我按照文档创建了自己的Nuget服务器并获得了它,但是我无法从Visual Studio 2019社区Nuget软件包管理器中访问软件包。

因此,当我通过浏览器进行操作时,我得到了,这似乎很好: enter image description here

当我单击“此处”以查看软件包时,我看到了我添加的测试包,如果单击它,我什至可以下载它:

enter image description here

但是,当我通过Visual Studio访问时,我得到了:

enter image description here

完整错误提示:

  

[Nuget Server] V2提要位于   'http:// mywebsite .com / NugetServer / Packages / Search()?$ filter = IsLatestVersion&searchTerm =''&targetFramework =''&includePrerelease = false&$ skip = 0&$ top = 26&semVerLevel = 2.0.0 '   返回了意外的状态代码“ 404 Not Found”。但我不知道   找出原因。

这是我将其添加到Nuget Manager的方式:

enter image description here

这是站点的文件夹结构: enter image description here enter image description here

如您所见,NugetServer项目告诉我将包test.1.0.0.nupkg放在其中。

我尝试了几件事:

  • 赋予所有人对文件夹的完全控制权限(因为一开始我得到403 Forbiden而不是404)

  • 更改文件夹结构,将nupkg软件包放入名为nuget的文件夹中,将整个Packages文件夹放入nuget文件夹中,以及我在其他Stackoverflow线程中看到的解决方案。

  • 按照this Stackoverflow thread的建议将所有内容转换为VB。

  • 更改IIS参数

对我没有任何帮助,所以我需要一点帮助来找到方法。

也许我需要一些东西来使Search()正常工作?我迷路了。

如果您需要我可以提供的更多信息,请问。

2 个答案:

答案 0 :(得分:0)

  

对我没有任何帮助,所以我需要一点帮助来找到方法。

     

也许我需要一些东西来使Search()正常工作?我迷路了。

     

如果您需要我可以提供的更多信息,请问。

首先,由于您可以获得nuget程序包并根据this document在本地网站上查看该程序包,因此我确定创建自己的nuget服务器的步骤没有问题。

主要原因是您使用了错误的链接,例如“包源”中的视图包。相反,您应该使用指定的存储库URL 。错误是它不能

存储库URL

在程序包管理器设置中,将以下 URL 添加到程序包来源列表:https://xxxxxxxxx/NugetServer/nuget

添加软件包

将包添加到文件夹D:\xxxxx\xxxx\NugetServer\Packages

中的提要放包文件(。nupkg文件)中

因此,请参阅您PC中的相关信息。

更新1

记录

1)将nuget软件包放入D:\xxxxx\xxxx\NugetServer\Packages之类的本地路径中,以便您可以通过链接访问这些软件包。(请勿创建任何其他新文件夹并将其放入其中)

2),按照PC上的存储库URL所述,将包源更改为http://xxxxxx/NugetServer/nuget

更新2

此外,请不要忘记同时运行NugetServer项目的实例,当您提供的第一个屏幕截图显示时,您应该遵循它的指导。

希望它可以为您提供帮助。

答案 1 :(得分:0)

请转至 Tools > Nuget Package Manager > Package Sources 并检查资源为 https://api.nuget.org/v3/index.json 如下:

enter image description here