c# – UWP Raspberry Pi Webserver问题

我正在关注Web服务器的示例应用程序,通过TCP使用端口处理传入请求.

示例应用程序,代码https://incredibits.io/project/windows-10-iot-internet-of-things-tips/windows-10-iot-raspberry-pi-web-server

在我的Windows 10计算机上调试UWP应用程序时,尝试访问本地IP(192.168.x.x< - Ofcourse我已经输入了我的实际本地IP),我得到了我应该得到的.应用程序得到一个传入的请求,并将一些数据返回给我(我的另一台计算机上的客户端). 我面临的问题是当我将其部署到运行Windows 10 IoT核心的RaspBerry Pi 3(来自Insider的最新版本)时,我无法从客户端计算机访问该应用程序.这是Pi的防火墙或其他阻止这种情况的东西吗? 我可以通过端口8080访问IoT Core的Web界面,但是我无法访问在端口80上运行的应用程序.(我已经尝试将端口切换到另一个端口,在我的Windows 10本地工作但不在Pi上工作) 有没有人知道解决方案,或者遇到类似的问题? 注意:
我也尝试过像(https://ms-iot.github.io/content/en-US/win10/samples/BlinkyWebServer.htm)这样的例子,它可以在我的Windows 10个电脑上运行,如果它们在同一个网络上,可以被我的其他PC访问,但不能在我的Pi上访问

解决方法

我找到了解决问题的方法.

我正在使用的端口没有在RaspBerry Pi的防火墙中打开.我找不到如何向防火墙添加规则,但在Freenode C#Chat论坛上提供了一些帮助后,我找到了以下代码段:

首先我通过PowerShell登录Pi

Enter-PsSession -ComputerName MyRaspBerryPi-Credential MyRaspBerryPi\Administrator

然后我手动添加我正在使用的端口的防火墙开放.在这种情况下,端口8080.

netsh advfirewall firewall add rule name="RaspBerry Pi Webserver" dir=in action=allow protocol=TCP localport=8080

在那之后,一切都按预期工作.我可以访问我的RaspBerry Pi上的端口!都好!

感谢@ canton7和@ taylor-kidd在评论中提出的建议,最终帮助了我!

编辑4月12日:
似乎防火墙没有打开这个问题,实际上是微软已经知道的问题.他们在这里写了一篇关于Insider Preview版本14295(我正在使用的)的Relase笔记http://ms-iot.github.io/content/en-US/win10/ReleaseNotesInsiderPreview.htm

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...