如何解析JSON响应以构建其他Paw请求?

时间:2016-09-07 22:56:42

标签: json paw-app

https://paw.cloud/

我从不同的API端点返回以下JSON:

while True:
    # sleep (0.1)

    numbers = list(str(count))
    print "Top of while; numbers=", numbers

    for i in limitlist:
        print "Top of for; i =", i, "\tadd =", add, "\tcount =", count, "\tadll =", add1
        if (i > 0) & (add < count):
            add = sum(Decimal(i) for i in numbers)
            lastnumber = int(numbers[-1])
            add1 = lastnumber+int(add)
            numbers.reverse()
            numbers.pop()
            numbers.append(add1)
            print "add1\t", add1
            print "add\t", add
            print "count\t", count
            print "numbers", numbers
        if (add1 == count):
            print"________________________________"
            print add1
            print count

        elif (i > 0) & (add > count):
            count += 1
            print "increment count:", count
            break

我想解析这个JSON并在爪子应用程序的另一部分中使用它。有没有人找到这样的例子?我正在尝试自定义JS文本,但这似乎是一个死胡同。

1 个答案:

答案 0 :(得分:2)

解决方案1:jq

根据他们的网站,“jq是一个轻量级且灵活的命令行JSON处理器”。你可以在Paw做jq查询。我们将使用它从您最新的回复中自动提取字段的ID。

在URL字段(您希望拥有此“智能ID”)上,右键单击并选择“jq JSON processor”。

Pick jq JSON processor in Paw to extract fields from jq

在“JQ args”字段中,输入查询(请参阅jq tutorial for details on how this works):

.[] | select(.slug == "bigcartel") | .id

在JSON输入字段中,右键单击并选择Response&gt;响应原始身体。弹出窗口将打开,将“请求”字段指向要从中提取响应正文的请求(您的“列表”请求)。这将自动获取此请求的最新响应的正文。

全部完成!您现在应该进行此设置:

Filter with jq the JSON body of an HTTP response in Paw

解决方案2:JavaScript代码段

Paw将JavaScript绑定暴露给写扩展(例如,上面使用的jq动态值被写为扩展)。它还可用于嵌入请求内联的小代码片段。实现更高级的设置很有帮助。

右键点击您需要插入ID的URL字段。选择扩展程序&gt; JS脚本。在弹出框中,粘贴此代码:

function evaluate(context){
    var request = context.getRequestByName("List");
    var httpExchange = request.getLastExchange();
    var body = JSON.parse(httpExchange.responseBody);
    for (var i = 0; i < body.length; i++) {
        var member = body[i];
        if (member.slug == "bigcartel") {
            return member.id;
        }
    }
    return null;
};

您可以在底部的“API参考”部分下的Paw documentation中找到Paw公开的此JavaScript API的文档。