C# System.Net.HttpListenerException:“拒绝访问”

问题描述: 在使用C#的System.Net.HttpListener进行客户端推送消息监听时,出现System.Net.HttpListenerException:“拒绝访问” 问题,现将解决方案记录一下,给遇到相同问题的朋友提供参考。

具体代码:

httpobj = new System.Net.HttpListener();
//定义url及端口号,通常设置为配置文件
httpobj.Prefixes.Add("http://+:8080/");
//启动监听器
httpobj.Start();

解决方案如下:
1、以管理员权限打开CMD命令行
2、先删除可能存在的错误urlacl,这里的*号代指localhost、127.0.0.1、192.168.199.X本地地址和+号等

命令:netsh http delete urlacl url=http://+:8080/ 

3、将上面删除的*号地址重新加进url,user选择所有人

命令:netsh http add urlacl url=http://+:8080/  user=Everyone

4、CMD配置防火墙

netsh advfirewall firewall Add rule name=\"命令行Web访问8080\" dir=in protocol=tcp localport=8080 action=allow

5、通过输入命令:netsh http show urlacl 查看新配置urlacl是否配置成功

经过如上设置服务端就可以以httpListener.Prefixes.Add(“http://+:8080/”);监听地址开启监听。客户端可以通过访问服务端8080端口。服务端本机也可以在浏览器中以localhost和127.0.0.1访问自身http服务器。

参考文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值