Windows Phone 8.1 模拟器不通过 Fiddler 代理 [英] Windows Phone 8.1 Emulator not proxying through Fiddler

查看:35
本文介绍了Windows Phone 8.1 模拟器不通过 Fiddler 代理的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我刚刚开始研究 Win Phone 8.1 并通过 Fiddler 从模拟器中代理一些数据,但它似乎不想玩球.围绕电话 7 和电话 8(不是 8.1)的所有指导似乎都是模拟器将路由流量,正如您期望机器上的其他应用程序使用 HTTP 进行通信,但我没有看到它发生.例如,埃里克在这里的帖子:http://blogs.msdn.com/b/fiddler/archive/2010/10/15/fiddler-and-the-windows-phone-emulator.aspx

I've just started looking into Win Phone 8.1 and playing with proxying some data via Fiddler from the emulator but it doesn't seem to want to play ball. All the guidance around Phone 7 and 8 (not 8.1) seems to be that the emulator will route traffic as you'd expect other apps on the machine talking HTTP to do but I'm not seeing it happen. For example, Eric's post here: http://blogs.msdn.com/b/fiddler/archive/2010/10/15/fiddler-and-the-windows-phone-emulator.aspx

没有应用过滤器.

内容在模拟器上的 IE 中成功加载.

Content is loading successfully in IE on the emulator.

Fiddler 成功捕获来自主机的所有流量.

Fiddler is successfully capturing all traffic from the host.

模拟器可以成功浏览主机以拉取 Fiddler 根证书.

The emulator can successfully browse to the host in order to pull the Fiddler root cert.

Fiddler 已正确设置了 registrationhostname 属性.

Fiddler has the registrationhostname property correctly set.

所以我几乎没有想法,我在多台机器上看到了相同的行为.我更倾向于认为我错过了一些明显的东西,而不是认为 8.1 中的某些东西发生了变化,对下一步尝试什么有什么想法吗?

So I'm pretty much out of ideas and I'm seeing the same behaviour on multiple machines. I'm more inclined to think I've missed something obvious than I am to think something has changed in 8.1, any thoughts on what to try next?

让我感到困惑的一件事是,我看到的指南(例如 Eric 的)谈到配置 Fiddler 以允许远程连接,但没有像通常使用物理设备那样在模拟器中设置代理设备.我认为这是通过在 Fiddler 中配置主机名来解决的,然后模拟器将其解析为通过代理路由?

One thing that I'm confused about is that the guidance I see (such as Eric's) talks about configuring Fiddler to allow remote connections but then there's nothing on setting a proxy in the emulator as you'd normally do with a physical device. I assume this is accounted for by configuring the host name in Fiddler and that it's then resolved by the emulator to route through the proxy?

仅供参考,我需要模拟器,因为它将在即将到来的 Pluralsight 课程中使用,我想通过 Fiddler 显示电话行为和流量.我怀疑这个问题可能与它通过主机上的虚拟 NIC 进行对话有关,听起来合理吗?

Just for reference, I need the emulator as it'll be used in an upcoming Pluralsight course where I want to show both the phone behaviour and the traffic via Fiddler. I suspect the issue may be related to the fact that it's talking over a virtual NIC on the host, sound reasonable?

推荐答案

我可以通过 Fiddler 成功使用 Windows Phone 8.1 虚拟机(在 Windows 8.1 Update 1 上).

I can successfully use Windows Phone 8.1 Virtual Machines (on Windows 8.1 Update 1) with Fiddler.

试试这个:

  1. 运行 Fiddler.
  2. 点击Tools > Fiddler Options > Connections.将 Fiddler Listen Port8888 更改为其他内容,例如8889.(Windows Phone 团队决定为他们的调试器窃取端口 8888).
  3. 勾选允许远程计算机连接框.
  4. 点击确定按钮
  5. 在 Fiddler 会话列表下方的 QuickExec 框中,键入 prefs set fiddler.network.proxy.RegistrationHostName 169.254.80.80,其中 IP 地址位于顶部将鼠标悬停在 Fiddler 工具栏右上角的 Online 指示器上时看到的工具提示.
  6. 重新启动 Fiddler.
  7. 启动 VS 2013 并加载您的项目.单击 Windows Phone 8.1 模拟器Run.
  8. 打开 IE.当设置对话框出现时,选择Custom Settings.在 Data Sense Saving 下拉菜单中,选择 Off.
  9. 点击完成.
  1. Run Fiddler.
  2. Click Tools > Fiddler Options > Connections. Change the Fiddler Listen Port from 8888 to something else, e.g. 8889. (The Windows Phone team decided to steal port 8888 for their debugger).
  3. Tick the Allow remote computers to connect box.
  4. Click Ok button
  5. In the QuickExec box below Fiddler's session list, type prefs set fiddler.network.proxy.RegistrationHostName 169.254.80.80 where the IP address is found at the top of the tooltip you see when hovering over the Online indicator at the top-right of Fiddler's toolbar.
  6. Restart Fiddler.
  7. Start VS 2013 and load your project. Click Run for the Windows Phone 8.1 emulator.
  8. Open IE. When the Settings dialog box appears, choose Custom Settings. In the Data Sense savings drop down, choose Off.
  9. Click Done.

从技术上讲,第 2 步不应该是必需的(因为他们的调试器正在侦听环回而不是公共 IP),但它不会受到伤害.我并不肯定第 8 步是必需的,但鉴于 Data Sense 的浏览器优化服务基于云中的代理,它看起来肯定可能干扰.

Step #2 technically shouldn't be required (because their debugger is listening on loopback instead of the public IP), but it can't hurt. I'm not positive that Step #8 is required, but given that Data Sense's browser-optimization service is based on a proxy in the cloud, it certainly seems like it could interfere.

这篇关于Windows Phone 8.1 模拟器不通过 Fiddler 代理的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆