我正在尝试将NancyFx与SignalR结合使用。为了托管两者,我使用的是Microsoft Owin。但不幸的是,当尝试通过PostMen访问REST-API(Chrome浏览器的REST-Api客户端扩展)时,我总是得到503(服务不可用)。因此,我将主要成分提取到一个更简单的程序,允许我在Nancy Selfhost和Owin之间切换。 使用Nancy SelfHost时,一切正常,但使用Owin我仍然遇到503错误。
internal class Program {
private const bool _USE_SELF_HOST = false;
private static void Main(string[] args) {
if (_USE_SELF_HOST) {
var host = "http://localhost:7084";
UseSelfHost(host);
} else {
var host = "http://localhost:7084";
UsingWebApp(host);
}
}
private static void UseSelfHost(string host) {
var webhost = new NancyHost(new Uri(host));
webhost.Start();
Console.ReadLine();
webhost.Stop();
}
private static void UsingWebApp(string host) {
var nancyHost = WebApp.Start<Startup>(host);
Console.WriteLine($"Nancy started at {host}");
Console.ReadLine();
nancyHost.Dispose();
}
}
public class MainModule : NancyModule {
public MainModule() {
Get["/"] = x => "Hello world!";
}
}
我查了一下:
答案 0 :(得分:3)
我的一位同事在我的netsh配置中发现了一个错误。我有两个urlacls用于相同的tcp端口:
Reservierte URL : http://wks-user:7084/
Benutzer: DOMAIN\user
Abh▒ren: Yes
Delegieren: No
SDDL: D:(A;;GX;;;XXX)
Reservierte URL : http://+:7084/
Benutzer: DOMAIN\user
Abh▒ren: Yes
Delegieren: No
SDDL: D:(A;;GX;;;XXX)
通过
删除第一个条目后netsh http delete urlacl http://wks-user:7084/
一切都按预期工作。