gpt4 book ai didi

api - Testcafe - 从请求负载中检索数据

转载 作者:行者123 更新时间:2023-12-04 09:26:27 32 4
gpt4 key购买 nike

我需要使用 Testcafe 从 POST 调用中检索信息。
我需要手动做的是:

  • 在 Chrome 中打开开发人员工具,
  • 捕获流量并按特定请求名称过滤,
  • 转到标题 -> 请求有效负载

  • 在请求有效负载中,我需要检查 的标志isMode .
    {timestamp: 9017205278, master: "s",…}
    > ads: [{format: 19521, tag: "19521", target: "", isMode: false},…]
    > 0: {format: 19521, tag: "19521", target: "", isMode: false}
    format: 19521
    isMode: false
    > 1: {format: 19522, tag: "19522", target: "", isMode: true}
    > appName: ""
    > master: "s"
    > screen: {height: 1080, width: 1920}
    > timestamp: 9017205278
    我可以使用此方法从请求中获取信息
    https://devexpress.github.io/testcafe/documentation/guides/advanced-guides/intercept-http-requests.html#log-http-requests
    但说实话,我不知道如何像上面这个例子那样检索信息。

    最佳答案

    好的,最后我能够解决这个问题并检索这些数据。
    首先,我必须创建新的 RequestLogger,在其中检查我是否需要日志请求正文,并且我想将其存储在字符串中,而不是作为缓冲区。

    const headerLogger = RequestLogger(RegExp('call$'), {
    logRequestHeaders: true,
    logRequestBody: true,
    stringifyRequestBody: true,
    });
    然后我将一个对象更改为字符串,因为检查日志是否包含特定字符串更容易。
    const requestPayloadString : string = headerLogger.requests[0].request.body.toString();
    最后,我的断言看起来像这样。我比较实际字符串是否包含预期字符串。
    await t.expect(requestPayload).contains(`{format: 19522, tag: "19522", target: "", isMode: true}`)

    关于api - Testcafe - 从请求负载中检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62991228/

    32 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com