对于运行在 XBOX One 或更高版本上的 Microsoft 游戏开发工具包 (GDK) 项目
有关详细信息,请参阅 Fiddler。对于 XBOX One(或更高版本)XBOX One 软件开发工具包项目
正常操作时,通过代理进行通信的主机可能会因代理修改其通信而受到影响。这种修改可能允许玩家作弊。因此,主机不允许通过代理进行通信。要将 Fiddler 与 XBOX One(或更高版本)开发工具包一起使用,你需要在开发工具包上执行一些特殊的配置步骤,以便它使用 Fiddler 代理。 你可以从 Fiddler 网站 下载 Fiddler Classic。 Fiddler 会影响主机报告的网络状态。如果你禁用运行 Fiddler 的机器的上游连接,则主机可能直到主机身份验证过期时才检测到此断开。如果你正在使用 Fiddler,请务必断开主机与运行 Fiddler 的计算机之间的连接,而不是使用 Fiddler 模拟断开连接。更好的做法是,使用网络压力工具来模拟断开连接以进行测试。在开发 PC 上安装并启用 Fiddler
要安装并启用 Fiddler 以监视来自开发工具包的流量,请按以下步骤操作。- 按照 Fiddler 网站 上的说明在开发 PC 上安装 Fiddler Classic。
- 启动 Fiddler,并从 Tools 菜单中选择 Fiddler Options。
- 选择 Connections 选项卡,并确保选中 Allow remote computers to connect 复选框。
- 选择 OK 接受你对设置的更改。将出现一个对话框,提示必须重新启动 Fiddler 才能使更改生效,并且你可能需要手动配置防火墙。在此对话框上选择 OK,但暂时不要重新启动 Fiddler。
- 配置必要的防火墙规则以允许远程计算机连接。启动 Windows 防火墙控制面板小程序。选择 高级设置,然后选择 入站规则。找到名为 FiddlerProxy 的规则,并向右滚动,验证该规则的每个以下设置是否出现。
- 配置 Fiddler 以捕获并解密 HTTPS 流量。
- 若要获得最佳性能,请通过在按钮栏上选择 Stream 按钮,将 Fiddler 设置为使用流模式。
- 在 Fiddler 中,选择 Tools,然后选择 Fiddler Options,然后选择 HTTPS。
- 选中 Decrypt HTTPS traffic 复选框。如果一个消息框询问是否配置 Windows 信任 CA 证书,请选择 Yes。
- 选择 Export Root Certificate to Desktop 按钮。
- 退出 Fiddler 并再次启动。
配置开发工具包以使用 Fiddler 作为其 Internet 代理
开发工具包上的 Fiddler 配置比以前版本中使用的方法更简单。- 将导出到桌面的 Fiddler 根证书复制到开发工具包,复制为
xs:\Microsoft\Cert\FiddlerRoot.cer。使用以下命令:xbcp [local Fiddler Root directory]\FiddlerRoot.cer xs:\Microsoft\Cert\FiddlerRoot.cer。 - 创建一个名为
ProxyAddress.txt的文本文件,以运行 Fiddler 的开发 PC 的 IP 地址或主机名以及 Fiddler 侦听的端口号作为文件的唯一内容。按以下格式格式化名称/IP 地址和端口:HOST:PORT。(默认情况下,Fiddler 使用端口 8888。) 例如,10.124.220.250:8888或my_dev_pc.contoso.com:8888。 - 将该文件复制到开发工具包,复制为
xs:\Microsoft\Fiddler\ProxyAddress.txt。使用以下命令:xbcp [local Proxy Address file directory]\ProxyAddress.txt xs:\Microsoft\Fiddler\ProxyAddress.txt。 - 通过在命令提示符中键入
xbreboot重新启动开发工具包。
停止使用 Fiddler
若要停止使用 Fiddler 作为 Internet 代理,从而在 Fiddler 中跟踪所有开发工具包的网络流量,请重命名或删除开发工具包上的FiddlerRoot.cer 文件,然后重新启动开发工具包。
工作原理
如果在启动时xs:\Microsoft\Cert\FiddlerRoot.cer 文件和 xs:\Microsoft\Fiddler\ProxyAddress.txt 文件都存在,则开发工具包将自身配置为使用 ProxyAddress.txt 中指定的代理服务器。如果任一文件缺失,则开发工具包不会将自身配置为通过 Fiddler 代理运行。
每台安装了 Fiddler 的 PC 都使用不同的 Fiddler 根证书。如果你有多台 PC 可能为你的开发工具包提供 Fiddler 代理,则只要其中一个命名为 FiddlerRoot.cer,你就可以将每台 PC 的 Fiddler 根证书复制到 xs:\Microsoft\Cert 目录。
开发工具包在对 Fiddler 代理进行身份验证时会检查 Cert 目录中的所有证书。只要证书存在于 Cert 目录中,开发工具包就会使用 ProxyAddress.txt 中地址所对应的 PC 上的 Fiddler 实例。
对于 XBOX One(或更高版本)UWP 项目
按照 UWP 文档中 在针对 UWP 进行开发时如何将 Fiddler 与 XBOX One 一起使用 ⬀ 一文中的步骤操作。对于 Windows UWP PC 应用
- 请确保当前用户位于 PC 上的管理员组中。
- 从 https://www.telerik.com/fiddler 下载 Fiddler。
- 请确保选择 Built for .NET 4 的版本。
- 安装完成后,转到 Tools > Fiddler Options,并启用 Capture HTTPS CONNECTs 和 Decrypt HTTPS traffic。运行时和 XBOX 服务之间的所有通信都使用 SSL 加密。如果没有此选项,你将看不到任何有用的东西。接受 Fiddler 弹出的所有对话框(共有五个对话框,包括 UAC)。
- 转到 WinConfig,选择 Exempt All,然后 Save Changes。否则,Fiddler 无法与应用商店应用配合工作。
- 现在,如果你运行你的应用,你会看到应用、运行时和 XBOX 服务之间的请求和响应。
