问题标签 [charles-proxy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
21678 浏览

charles-proxy - 浏览器不接受 Charles Proxy SSL 证书

我使用 Charles 代理(在 OS X 10.9.3,Mavericks 下)修改 Origin 标头,以便我连接的 API(开发中)接受来自开发环境的传入请求。

我设法通过一个简单的重写规则完成了这项工作,直到今天一切正常。

当前的问题是浏览器没有连接到代理(由查尔斯设置)。请求中的“失败”字段显示:“未提出请求。可能 SSL 证书被拒绝。”,在下方的备注字段中:“您可能需要配置浏览器以信任 Charles CA SSL 证书。” .

我已经这样做了,而且效果很好。从那以后我没有改变查尔斯的配置。我试图让它工作的事情:

  1. 卸载并重新安装Charles 证书
  2. 在以下浏览器中尝试相同的操作:Chrome Canary、Chrome stable、Safari 和 Firefox
  3. 使用 HTTP 代理而不是更高级的 SOCKS 代理。

我还确保无论默认设置如何,Charles 证书始终是受信任的:

钥匙串访问

不确定这是否是解决方案的线索,但是当我在打开 Charles 的情况下直接导航到 api 时,我看到了这个: 警告

API 确实托管在 Windows Azure 平台上,但我不明白为什么 Charles 证书(因为 Charles 充当中间人,向浏览器显示其证书)是由 *.azurewebsites.com而不是实际的主机。

需要注意的是,实际的主机(比如 api.example.com)有一个有效的、购买的 *.example.com 通配符证书。

如果有人暗示如何解决这个问题或到底发生了什么,我会非常感谢她的建议。

谢谢你。

附言。如果我调整直接请求以获得正确的 Origin 标头(修改/清除敏感信息):

GET /xxx HTTP/1.1
主机:api.example.com
连接:keep-alive
缓存控制:max-age=0
接受:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp , / ;q=0.8
用户代理: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.114 Safari/537.36
Accept-Encoding: gzip,deflate,sdch
Accept-语言:en-US,en;q=0.8,hu;q=0.6
Cookie:...
来源:https ://acceptable.host.com

我收到以下回复:

HTTP/1.1 400 错误请求
内容长度 46
内容类型应用程序/json;charset=utf-8
服务器 Microsoft-IIS/8.0
X-Powered-By ASP.NET
Set-Cookie ARRAffinity=secret-token;Path=/;Domain=api.example.com
日期 2014 年 5 月 21 日星期三 07:58:02格林威治标准时间

0 投票
1 回答
2149 浏览

android - 设置 Charles 代理会导致模拟器失去互联网连接

所以我试图在 Mac 上设置 Charles(运行 Mavericks)。我安装了 Charles,通过添加 * 作为 SSL 位置来设置代理设置(这意味着它应该接受来自任何地方的流量,对吗?)。

然后我进入运行 4.4.2 的模拟 Android 设备并访问 http://charlesproxy.com/charles.crt获取证书,接受证书并为它添加一个 pin 到模拟设备,它说它是安装。

互联网仍然可以在模拟设备上运行。然后我在这个模拟设备上进入我的互联网设置,为我的机器设置代理,然后,互联网消失了,我无法访问任何东西。重新获得互联网的唯一方法是擦除模拟设备并重新开始。我现在已经做了几次以确认结果,当我在设备上设置代理设置时,互联网就死了。

任何人都对此问题有任何经验并可以提供一些帮助吗?

0 投票
1 回答
2264 浏览

ssl - 更改 Charles Proxy 使用的证书

我想在我的 Android 应用程序(https://www.owasp.org/index.php/Certificate_and_Public_Key_Pinning)上实现固定。简而言之,它是客户端将接受的公钥白名单。它在我的客户端中进行了硬编码,因此除非 SSL 握手具有特定的公钥,否则应用程序不会与服务器通信。

问题:我想使用 Charles Proxy 来查看来回的 HTTPS 流量,因为 Charles Proxy 本质上是一个 MITM 并使用自己的证书签署请求,我的应用程序拒绝它。

有没有办法给查尔斯服务器证书(我拥有它)并让它用它来签署请求?

0 投票
2 回答
4228 浏览

android - Chrome 绕过了我的 Google Nexus 5 上的代理设置

我有一个直接从谷歌(英国)购买的 Nexus 5。在过去的几天里,我花了相当多的时间试图让设备通过我的笔记本电脑进行代理(使用Charles)。但是,它只是行不通。无论我做什么,在尝试通过 Chrome(我设备上的默认且唯一的浏览器)访问任何站点时,代理都会被忽略。

我已经尝试在我的 Nexus 7 设备上使用完全相同的方法进行代理,并且一切正常。

我试过了:

  • 软复位
  • 清除设备上 Chrome 上的缓存
  • 连接和断开 wifi 网络、删除和恢复代理设置的各种组合
  • 严格按照这些说明进行操作(并在可能的情况下进行更改)

它快把我逼疯了。我有两台具有相同设置的类似 Android 设备,并排坐着,一台会打球,另一台不会。

我用谷歌搜索了很多都没有成功,我只是想知道是否有其他人遇到过这种情况?修复将不胜感激。

0 投票
1 回答
145 浏览

http - 如何在 Charles Proxy 跟踪中编辑密码

我需要使用Charles Proxy跟踪记录 HTTP 身份验证问题,但我想在生成的跟踪文件中编辑密码。

手动编辑.chls由“保存”菜单命令生成的二进制文件会导致文件损坏,因此这不是一个选项。

0 投票
0 回答
53 浏览

c# - 在不运行 Fiddler/Charles 的情况下抓取站点(基于 ASP.NET)时的不同站点行为

我需要从我们的合作伙伴网站(德国研究机构“Gesellschaft für Konsumforschung” - https://startrack.gfkrt.com/)自动抓取一些数据。

他们不想为我们创建干净的 api,因为“网站是大约十年前写的,非常非常复杂,大约十年前原来的程序员也被解雇了,新程序员非常害怕破坏整个事情,因为更改/添加任何东西”(C)。他们也不想提供消息来源,因为“这是他们的知识产权”。

在 Telerik 控件的帮助下,使用 ASP.NET Web 窗体使站点变白。

因此,使用 Fiddler 我观察了浏览器发送到服务器的标题和表单数据。然后使用标准 HTTPWebRequest 类,我编写了发送相同标题和表单数据的应用程序。它工作得很好。但是在调试时,我使用 Fiddler 来观看我的应用程序通过 SSL 隧道发送/检索的数据。

但是当我停止使用 Fiddler 时,我的应用程序完全崩溃了——当没有它运行时,站点总是返回显示“发生严重错误”的页面(当 5xx 错误发生时不是标准的 IIS 响应,而只是带有该文本的站点的标准页面) .

当 Fiddler 运行我的应用程序正常时 - 站点没有返回错误,但当没有时 - 出现“站点严重错误”。我用查尔斯尝试过同样的事情——同样的结果——当它在后台运行时一切正常,当没有错误时。在浏览器中一切都很好,即使没有 Fiddler/Charles 运行。

那么没有任何东西的 HTTPWebRequest 和 Fiddler/Charles 下的 HTTPWebRequest 有什么不同呢?我可以在我的代码中更改什么,这将使它们的行为相同?

0 投票
1 回答
604 浏览

remote-debugging - 查尔斯:如何只记录文档但摘录js css请求?

我在查尔斯的“记录设置”对话框中找不到这种设置。

0 投票
13 回答
67889 浏览

ios - 如何在 Xcode 6 (iOS 8) 模拟器上使用 Charles Proxy?

iOS Simulator 的目录似乎已更改。以前在~/Library/Application\ Support/iPhone\ Simulator/,现在在~/Library/Developer/CoreSimulator/Devices/

0 投票
1 回答
536 浏览

ios - 我们如何模拟一个天蓝色的端点?

我正在使用 azure API 端点。 ....azure-api.net/.... 当我尝试使用 Charles 代理查看 HTTP 请求/响应时,HTTP 响应为空。当我关闭代理时,请求有效。

为了自动化测试,我想拦截请求并模拟响应。

我可以使用 Charles 代理查看到其他服务器的其他 HTTPS 端点。所以我相信 azure 有一些特别的地方阻止请求完成。

  • azure 怎么知道中间有一个代理并且它不与客户端交谈?
  • 无论如何配置 azure API 以允许 Charles 工作?(因为查看 HTTP 流量对开发很有用)
  • 是否有另一种方法可以让流量变天被嘲笑?例如主机重定向?

我正在使用标准的 iOS 网络代码

以下是 Charles Proxy 的屏幕截图。连接请求后没有响应。

要求

0 投票
6 回答
69705 浏览

google-chrome - 查尔斯代理不适用于 Chrome

我在 Mac 上工作,系统和 Firefox 浏览器的代理设置相同。但是,我可以在 Chrales 中看到我的 Firefox 流量,但看不到我的 Chrome 和 Safari 流量(它们使用系统代理设置)。我需要做什么?我该如何检查调试呢?

已经重新启动了我的浏览器,但它没有帮助。我已经设置和重置代理设置,但没有用。

需要注意的一件事:我使用的是 VPN,尽管我认为这不会影响 Chrome,因为 Firefox 正在通过代理。