我可以使用 Fiddler 脚本修改 JSON 响应吗

2024-02-26

以下是我从服务器获得的响应(正文)。我正在寻找修改一些键值对。 我使用了以下方法:

var bodystr=oSession.GetResponseBodyAsString();
var bodyjson=Fiddler.WebFormats.JSON.JsonDecode(bodystr); 

But the bodyjson没有任何我期望的内容。 (我尝试使用MessageBox.Show(bodyjson.Sales.Qty);但这会返回一个错误。)

{
    "Sales" : {
        "Qty" : 1,
        "Item" : {
            "value" : "7"
        },
        "TaxCode" : {
            "value" : "NON"
        },
        "UnitPrice" : 3
    },
    "LineNum" : 0,
    "DetailType" : "Sales",
    "Amount" : 3,
    "Id" : "1"
}

除了字符串替换方法之外,还有什么方法可以更改 JSON 响应吗?


上面的帖子帮助我完成了这项工作,我的完整示例如下

我想在发送之前更改的 JSON 如下

{
   "ConsistId":"09C31636-0D8E-4C92-B09C-8413366E2D79",
   "UserName":"Test",
   "Date":"2016-07-19T13:10:00"
}


 static function OnBeforeRequest(oSession: Session) {

    if(oSession.HostnameIs("localhost")) {
        oSession["ui-backcolor"] = "lime";
        oSession["ui-bold"] = "Bold text here"

        // Convert the request body into a string
        var oBody = System.Text.Encoding.UTF8.GetString(oSession.requestBodyBytes);

        // Convert the text into a JSON object
        var j = Fiddler.WebFormats.JSON.JsonDecode(oBody);

        //Change the ConsistId value
        j.JSONObject["ConsistId"] = "A9C01636-0D8E-4C92-B09C-8413366E2D79";

        // Convert back to a byte array
        var modBytes = Fiddler.WebFormats.JSON.JsonEncode(j.JSONObject);

        // Convert json to bytes, storing the bytes in request body
        var mod = System.Text.Encoding.UTF8.GetBytes(modBytes);
        oSession.RequestBody = mod;

    }
...

这改变了请求,所以现在需要弄清楚如何显示填充 guid id 的提示

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我可以使用 Fiddler 脚本修改 JSON 响应吗 的相关文章

  • 通过另一台服务器中继 PostgreSQL 连接

    我在远程服务器上使用 PostgreSQL 数据库 该服务器具有非常严格的防火墙 只允许来自我们的网络服务器的连接 这使得在我自己的工作站上开发东西变得非常困难 因为我无法直接连接到该服务器来测试我的代码 我想做的是在我们的网络服务器上设置
  • Windows 上的 Fiddler 4 证书错误

    我正在使用 Fiddler 来监控我们的私人项目的 HTTPS 流量 升级到 Windows 10 并安装 Fiddler 后 我无法创建根证书 我尝试使用 CertEnroll 和 MakeCert 但都返回无法创建根证书 09 53 5
  • 查找通过代理连接的客户端的IP地址

    有没有办法收集通过代理服务器连接到您网站的客户端的 IP 地址 整个设置是一个内部 LAN 通过系统管理员 我也可以控制代理计算机 我在网站服务器端使用 PHP5 I tried SERVER REMOTE ADDR 在 PHP 中 但此变
  • 使用 Flask 代理到另一个 Web 服务

    我想将对 Flask 应用程序发出的请求代理到计算机上本地运行的另一个 Web 服务 我宁愿使用 Flask 而不是更高级别的 nginx 实例 这样我们就可以重用应用程序中内置的现有身份验证系统 我们越能保持这种 单点登录 越好 是否有现
  • 如何使用 Angular-CLI 重写反向代理中的路径?

    我已经使用 angular2 CLI 设置了反向代理 如下所示 api customer target http localhost 9010 secure false 我的问题是远程 API 在路径 customer 上公开服务 但反向代
  • 如何从 .pac 文件中查找代理服务器和密码

    我正在使用 dynatrace ajax 版本 它需要代理服务器和密码才能连接到 dynatrace 服务器 问题是我只有我们在工作中使用的 pac 文件 URL 是否可以知道我的请求解析到哪个代理服务器和端口 以便我可以直接提供代理服务器
  • 使用 mongoose 和 Fixie(Heroku 附加组件)连接到 mongodb

    我有一个托管在 Atlas MongoDB Cloud 集群上的 mongodb 数据库 我目前正在使用 mongoose 访问 Node js 应用程序中的数据库 mongoose connect mongodb user pw clus
  • 无法让 netTcpBinding 请求显示在 Fiddler 中

    我有一个具有两个端点的 WCF 服务 一种使用 basicHttpBinding 另一种使用 netTcpBinding 这是我的配置
  • 通过 perl 脚本使用代理

    我想在这个 perl 脚本中使用代理 但我不知道如何让它使用代理 usr bin perl use IO Socket remote IO Socket INET gt new Proto gt tcp PeerAddr gt localh
  • 无法拦截Android应用程序的流量

    最近 我正在尝试测试和拦截来自开发的应用程序的流量罗莫比尔 我设置了一个代理burp 当然 我已经在我的设备上安装了 burp 证书 因此我可以拦截设备上的其他应用程序 但我无法在 burp suite 上看到相关应用程序的流量 相反 该应
  • 检测用户是否位于代理后面

    我试图弄清楚如何检测登录我网站的人是否在代理后面 我读到您可以通过可嵌入对象 Flash 和 Java 检测一个人的真实 IP 地址 但是 我实际上无法找到任何示例或来源 我正在使用 PHP 并且我已经阅读了寻找 SERVER HTTP X
  • yum update / apk update / apt-get update 在代理后面不起作用

    我使用代理 无法构建 Docker 映像 我尝试过FROM ubuntu FROM centos and FROM alpine but apt get update yum update apk update failed 我的主机操作系
  • 如何在 Nodejs 中创建代理下载

    我想创建一个nodejs服务器 它充当下载文件的代理 即用户点击 在下载按钮上 从nodejs服务器调用get nodejs服务器从不同的服务器获取链接 远程服务器并开始下载 以 TB 为单位 然后将该下载转发给用户 TB 文件不应存储在
  • 在 selenium webdriver 中使用 phantomjs 代理

    我正在尝试在 selenium webdriver 2 25 的 ruby 1 8 7 脚本中使用 PhantomJS 1 9 1 配置代理 我看到了一些使用 Firefox 的例子 我用这个浏览器成功地做到了 我使用了这段代码 profi
  • Windows 注册表中的 DefaultConnectionSettings 值的格式是什么?

    Windows 注册表项 HKCU Software Microsoft Windows CurrentVersion Internet Settings Connections 包含一个名为的二进制值DefaultConnectionSe
  • 使用 Connect 和 node-http-proxy 的 HTTP 代理

    在开发过程中 我需要一个 HTTP 代理来访问外部 API 以绕过跨域安全限制 我在这里找到了一些示例代码 http nthloop com blog local dev with nodejs proxy http nthloop com
  • NEST 1.0:请参阅 Fiddler 上的请求

    我刚刚更新到 NEST 1 0 我在远程服务器 不是本地主机 上有 Elastic Search 通常我在使用 Fiddler 发送和接收请求时没有任何问题 更新后 bammm 没有检测到任何请求 但我的应用程序发出这些请求没有任何问题 你
  • 在 Apache HttpClient 4.1.3 中设置 nonProxyHosts

    我实在无法回答这个问题 如何在 Apache HttpClient 4 1 3 中设置 nonProxyHosts 在旧的 Httpclient 3 x 中 这非常简单 您可以使用 set NonProxyHosts 方法来设置它 但现在
  • HTTPS URL 的基本代理身份验证返回 HTTP/1.0 407 需要代理身份验证

    我想在 Java 中使用具有基本身份验证 用户名 密码 的代理来进行连接 并且仅此连接 以下代码适用于 HTTP URL 例如 http www google com http www google com URL url new URL
  • Visual Studio 错误:(407:需要代理身份验证)

    我位于需要凭据的公司代理服务器后面 我一直在尝试连接到 TFS 服务器 在 tfspreview com 上 微软 Visual Studio 专业版 2012最后2个小时没有成功 每次尝试都会遇到此错误 当我启动集成浏览器时 它工作正常

随机推荐