【问题标题】:How can i send several request (http method: PUT) to a single endpoint如何将多个请求(http 方法:PUT)发送到单个端点
【发布时间】:2020-03-22 06:30:35
【问题描述】:

我可以访问特定的端点,我想一次向它发送多个请求,但我不是 100% 确定如何做到这一点。我需要更新一些与不同产品相关的信息,所以我需要在端点内指定产品,我的意思是,即:

如果您访问此特定端点:{{URL_API}}/products/,您将获得所有产品我需要指定要更新的产品:

{{URL_API}}/products/99RE345GT

看看这个,我想发送一个这样的 JSON:

{
    "sku": "99RE345GT",
    "price": "56665.0000",
    "status": 1,
    "group_prices": [
        {
            "group": "CLASS A",
            "price": 145198.794
        },
        {
            "group": "CLASS B",
            "price": 145198.794
        },
        {
            "group": "CLASS C",
            "price": 145198.794
        }
    ]
}

还有一个这样的(两个 JSON 共享相同的结构,但信息不同):

{
    "sku": "98PA345GT",
    "price": "17534.0000",
    "status": 1,
    "group_prices": [
        {
            "group": "CLASS A",
            "price": 145198.794
        },
        {
            "group": "CLASS B",
            "price": 145198.794
        },
        {
            "group": "CLASS C",
            "price": 145198.794
        }
    ]
}

我该怎么做?。我已经为每个产品生成了 200 多个 JSON..

所以,我必须更新 200 个产品,所以我为每个产品生成一个 JSON,你明白吗?

按照我的示例,我需要(以某种方式)编辑每个产品的端点并发送 JSON,即:

因为第一个 JSON 有 SKU:99RE345GT,它应该在这个端点上执行 http 方法:PUT

{{URL_API}}/products/99RE345GT

然后,由于第二个 JSON 具有 SKU:98PA345GT,它应该在此端点上执行 http 方法:PUT

{{URL_API}}/products/98PA345GT

我以前从未做过这样的事情。我读过一些关于 CSV + POSTMAN runner 的内容,但我不明白这种方式。

你能帮帮我吗?

编辑:

新更新,如果我使用 GET,它会抛出“200”,但我必须执行 PUT 方法:

【问题讨论】:

    标签: json rest api csv postman


    【解决方案1】:

    在无法访问您的 API 文档或任何信息正在变化的迹象的情况下,我做出了以下假设:

    1. PUT 端点需要端点中的 SKU id
    2. 价格、状态、A 类价格、B 类价格、C 类价格是不断变化的变量

    首先像这样创建您的请求...识别变量。

    接下来创建您的 CSV 文件,确保使用与变量匹配的字段/列名称。

    最后一步,打开 Collection Runner 并单击 Select File。选择 CSV 文件后,iterations 字段将根据文件中的行数进行更新。

    从那里您只需运行您的请求,Postman 将使用您的 CSV 文件中的信息遍历您的文件更新产品。

    【讨论】:

    • 嘿伙计,你好吗?它不断抛出这个错误:404 Not Found(我已经编辑了我的线程)
    • 我猜问题出在端点:{{URL_API}}/ns/products/{{sku}} .. 它无法识别地址。 {{sku}} = 未解决的变量
    • @Student_new - 你的意思是在你的ns 端点中有ns 吗?通常,无论动词如何,您的端点都保持不变,并且您的 GET 不使用它。
    • 是的,我必须使用 ns 这个词。如果我使用此端点: {{URL_API}}/ns/products/:{{sku}} (使用 : )它会抛出此错误消息: Multi-Status (WebDAV) (RFC 4918) 但我使用这个端点(没有 :)它会抛出 404 not found :(
    • @你为什么说:“GET”?我必须使用 PUT http 方法:/
    猜你喜欢
    • 1970-01-01
    • 2013-07-05
    • 1970-01-01
    • 2022-07-26
    • 2014-09-02
    • 1970-01-01
    • 1970-01-01
    • 2019-03-07
    • 1970-01-01
    相关资源
    最近更新 更多