无法访问localhost怎么办? Window解决UWP应用本地回环限制

问题:在 window 的 uwp 应用中遇到了本地回环限制,无法访问外部网络?针对这一常见问题,php小编柚子深入探究,为您提供了解决方案。以下文章将详细阐述本地回环限制的本质,并提供分步指南,帮助您轻松解除这些限制,让您的 uwp 应用与外部世界无缝连接。

1. UWP 应用默认禁止本地回环

UWP 应用在默认的情况下,禁止访问本地的 Localhost(这被称做本地回环 Loopback)。

然而我们在开发、调试、正向代理等场景下,又不得不让 UWP 突破这一个限制。

2. 官方限制解除工具 CheckNetIsolation.exe

这个工具位于 C:/Windows/System32/CheckNetIsolation.exe,它的功能为解除 UWP 的本地 Loopback 限制或者调试应用(本文仅介绍解除 Loopback 限制)。

./CheckNetIsolation.exe LoopbackExempt [operation] [-n=] [-p=]

登录后复制

常见用法:

-s: 查看已经取得 Loopback 豁免的应用列表-a -p=[App Container SID] or -a -n=[App Container Name]: 添加应用豁免-d -p=[App Container SID] or -d -n=[App Container Name]: 移除应用豁免-c: 移除所有安装的应用的豁免

3. 如何获取所有安装应用的 SID

在注册表目录 HKCUSoftwareClassesLocal SettingsSoftwareMicrosoftWindowsCurrentVersionAppContainerMappings 即可取得所有 App 的 SID 列表。

通过结合 CMD 或者 Pwsh 的循环命令,即可自动化为所有已安装应用添加豁免:

CMD 命令:

FOR /F "tokens=11 delims=" %p IN ('REG QUERY "HKCUSoftwareClassesLocal SettingsSoftwareMicrosoftWindowsCurrentVersionAppContainerMappings"') DO CheckNetIsolation.exe LoopbackExempt -a -p=%p

登录后复制

Powershell 命令:

Get-ChildItem -Path Registry::"HKCUSoftwareClassesLocal SettingsSoftwareMicrosoftWindowsCurrentVersionAppContainerMappings" -name | ForEach-Object {CheckNetIsolation.exe LoopbackExempt -a -p="$_"}

登录后复制

New Powershell Core:

(Get-AppxPackage -AllUsers).PackageFamilyName | ForEach-Object {CheckNetIsolation.exe LoopbackExempt -a -n="$_"}

登录后复制

4. 其他便捷工具以及深层次分析

来自 Fiddler 的 Enable Loopback Utility 或开源项目 Loopback Exemption Manager 的这两个工具提供了很方便的图形化方式来对安装的 UWP 应用进行 Loopback 豁免。

深入研究后者工具以及类似工具的源代码,并参考作者提到的:

我们可以知道,开源工具的作者从 Fiddler 那里借鉴了 P/Invokes 的方式获取 API,而所 Invoke 的 API 主要来自于 FirewallAPI.dll,这个 dll 提供了很多与 UWP Loopback 豁免相关的实用方法。

我们继续使用 VS2022 的 Dev Shell 对官方的 CheckNetIsolation.exe 进行 dll 依赖分析(需要安装 VS 2022):

无法访问localhost怎么办? Window解决UWP应用本地回环限制

到这里我们便可以得知,无论是官方工具还是第三方工具的实现,都是调用 FirewallAPI.dll 提供的 API 来进行 Loopback 豁免的。

以上就是无法访问localhost怎么办? Window解决UWP应用本地回环限制的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2009899.html

(0)
上一篇 2025年2月23日 16:28:39
下一篇 2025年2月23日 16:28:54

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论