簡體   English   中英

如何制作這樣的 JSON 響應?

[英]How to make JSON response like this?

對於基於flask的python API項目,我必須返回如下的json響應:

{
    "images": 
    [
        {
            "transaction": 
            {
                "message": "match found",
                "status": "success",
                "subjectId": 79,
                "confidence": 0.56

            }
        }
    ]
}

在上面的 json 中, images看起來像一個列表,而transaction看起來像一個 dict,這意味着響應是一個 dict 列表。 現在下面是我為了實現上述格式而擁有的代碼:

@app.route('/api/v1/face/recognize', methods=['POST'])
def recognize():
    """
    SOME CODE
    """

    images = []
    transaction = dict()

    transaction['status'] = 'success'
    transaction['message'] = "match found"
    transaction['subjectId'] = 79
    transaction['confidence'] = 0.56
    images.append(transaction)

    return jsonify(images), 200

但它給了我以下回應:

[
    {
        "confidence": 0.56,
        "message": "match found",
        "status": "success",
        "subject_id": 79
    }
]

這看起來不像我想要的。 我無法理解如何使響應格式看起來像上面提到的那樣。 任何人都可以請幫忙。 謝謝

你很親近。 使用images.append({'transaction': transaction})

前任:

@app.route('/api/v1/face/recognize', methods=['POST'])
def recognize():
    """
    SOME CODE
    """

    images = []
    transaction = dict()

    transaction['status'] = 'success'
    transaction['message'] = "match found"
    transaction['subjectId'] = 79
    transaction['confidence'] = 0.56
    images.append({'transaction': transaction})
    images = {'images': images}

    return jsonify(images), 200

輸出:

{'images': [{'transaction': {'confidence': 0.56,
                             'message': 'match found',
                             'status': 'success',
                             'subjectId': 79}}]}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM