18910140161

C#解析HttpListener访问拒绝异常

顺晟科技

2021-08-28 09:39:49

607

问题描述

在Windows 10中,使用C#的HttpListener监听端口8081。代码如下:

尝试

{

HttpListener侦听器=new HttpListener();

倾听者。前缀.添加(' http://* :8081/');

倾听者。start();

}捕获(异常错误)

{

控制台。WriteLine(错误。消息);

}

在Visual Studio 2019中运行后出现异常。

系统。net . httplistenereexception :“访问被拒绝。”

解决办法

下面总结了几种解决方案。

1.指定完整的前缀

将前缀指定为localhost或127.0.0.1。

HttpListener侦听器=new HttpListener();

倾听者。前缀.添加(' http://127 . 0 . 0 . 1:8081/');

倾听者。start();

2.配置命名空间保留

您可以在非管理员模式下运行HttpListener,并且只向特定的URL授予权限。例如,我使用管理员登录系统,并在终端运行以下命令:

netsh http add URL ACL URL=http://* :8081/用户=管理员

这里,http://*:8081/应与代码的前缀一致,参考官方文件。

3.以管理员身份运行

权限不足,无法以管理员身份运行。右键单击Visual Studio 2019的启动图标,然后选择以管理员身份运行。

相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航