Visual Studio 2015:配置WebAPI以允许外部设备远程测试调试
让同一子网设备访问VS2015托管的WebAPI的设置步骤
我来帮你搞定这个问题,让同一子网里的嵌入式设备能顺利访问VS2015本地托管的WebAPI,步骤很清晰,跟着做就行:
1. 先获取本地电脑的局域网IPv4地址
这是基础,你得先知道VS2015所在电脑在局域网里的地址:
- 按下Win+R,输入
cmd打开命令提示符 - 执行命令
ipconfig - 找到你的本地网络适配器(比如“以太网”或“Wi-Fi”),记下
IPv4地址,比如192.168.1.100
2. 修改Visual Studio 2015的项目URL设置
这一步是让WebAPI绑定到局域网IP,而不是只绑定localhost:
- 右键你的WebAPI项目,选择属性(Properties)
- 切换到Web标签页
- 在「服务器」区域,找到
Project Url,把原来的http://localhost:xxxx替换成刚才查到的IPv4地址,比如改成http://192.168.1.100:58888(端口号保持原来的或者换一个未被占用的都可以) - 勾选「Override application root URL」,把这里也设置成相同的IPv4地址URL
- 点击「Create Virtual Directory」按钮,确认虚拟目录创建成功
- 保存项目设置,然后重启Visual Studio或者重新启动调试
3. 配置Windows防火墙允许端口访问
默认Windows防火墙会阻止外部设备访问本地的调试端口,所以得开个口子:
- 打开「Windows Defender防火墙」,点击左侧的「高级设置」
- 右键「入站规则」,选择「新建规则」
- 规则类型选「端口」,点击下一步
- 选择「TCP」,输入你的WebAPI使用的端口号(比如刚才的
58888),点击下一步 - 选择「允许连接」,点击下一步
- 确保「域」「专用」「公用」都勾选(同一子网下「专用」是必须的),点击下一步
- 给这个规则起个好记的名字,比如「WebAPI调试端口」,完成规则创建
4. (可选)修改hosts文件实现自定义域名访问(非必需)
如果你不想让设备记住复杂的IP地址,可以通过hosts文件映射一个自定义域名:
- 用管理员权限打开记事本,然后打开文件
C:\Windows\System32\drivers\etc\hosts - 在文件末尾添加一行:
把这里的IP换成你的局域网IPv4,域名可以随便起192.168.1.100 mywebapi.local - 保存文件后,同一子网的设备就可以用
http://mywebapi.local:58888/api/xxx来访问了
5. 测试验证
- 在VS2015里启动WebAPI调试
- 拿你的嵌入式设备,用浏览器或者客户端工具访问
http://你的IPv4地址:端口/api/你的控制器路径,比如http://192.168.1.100:58888/api/values - 如果能正常返回API的响应数据,就说明设置成功了!
注意事项
- 确保VS2015所在电脑和所有嵌入式设备都在同一子网(也就是IPv4的前三个段相同,比如都是192.168.1.x)
- 如果调试时VS提示端口被占用,换一个未被使用的端口号,重复上面的设置步骤即可
- 不要使用公网IP,咱们只需要局域网内访问,用本地IPv4就足够了
内容的提问来源于stack exchange,提问作者Ian Finlay




