gpt4 book ai didi

wildcard - Nancy 无法加载通配符 url 预订

转载 作者:行者123 更新时间:2023-12-02 19:01:06 25 4
gpt4 key购买 nike

我有一个自托管 NancyFX Web 服务器的桌面应用程序。作为一个桌面应用程序,我们需要允许动态 IP 地址,因此我们使用 netsh 的通配符选项注册了 url,如下所示:

netsh http add urlacl url=http://+:1234/ user=Everyone

但是,当此应用程序在非管理员帐户下运行时,会引发以下异常。

The Nancy self host was unable to start, as no namespace reservation existed for the provided url(s).

Please either enable UrlReservations.CreateAutomatically on the HostConfiguration provided to
the NancyHost, or create the reservations manually with the (elevated) command(s):

netsh http add urlacl url=http://192.168.1.90:1234/ user=Everyone

我尝试了多种通配符注册组合,但结果都相同。我还考虑了在加载 Nancy 时注册通配符,但由于 Nancy 使用 Uri 类型,这是无效的。

我假设通过使用通配符注册,我已经注册了任何要使用的 IP 地址。但Nancy似乎需要注册具体的IP地址。

如果有人能告诉我为什么通配符注册不适用于 Nancy,或者更好的是如何使其适用于 Nancy,我将非常感激。

最佳答案

这是一个老问题,但如果有人遇到这个问题,Nancy SelfHost 允许您使用 HostConfiguration 对象自动创建 Url 预留。

该 URL 将在启动时自动保留。

//Nancy configuration
HostConfiguration hostConfig = new HostConfiguration()
{
UrlReservations = new UrlReservations()
{
//create URL reservations automatically
CreateAutomatically = true
}
};

//Uri
Uri uri = new Uri("http://localhost:9999");

using (var host = new NancyHost(hostConfig, uri))
{
host.Start();

Console.WriteLine("Running self-hosted server ...");
Console.WriteLine("Press [Enter] to close the application.");
Console.ReadLine();
}

关于wildcard - Nancy 无法加载通配符 url 预订,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25498900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com