在Python中打印JSON POST响应输出到屏幕。

问题描述 投票:1回答:1

当我在postman中向这个api发送一个post请求时,我得到了一个post请求的响应输出。我只想知道如何将其打印到屏幕上,或者将其解析后用于进一步使用响应。

url = ("https://mysupersecretapi/123456/execute")

    headers =  {'Accept': 'application/json', 'Accept-Encoding': 'gzip, deflate', 'Authorization': 'basic' , 'Content-Type':'application/json;charset=utf-8'}
    perameters = {
"inputs": {
"Container_Full": 'true',
"Container_Note": "",
"Output_Stream_Id": "1",
"Piece_Serialized": "<Container><Pieces><PieceSerialNo>"+strContainer[0]+"</PieceSerialNo> <CustomerSerialNo/><Note></Note></Pieces></Container> ",
"Qty_Is_Container_Qty": 'true',
"Quantity": 1,
"Workcenter_Key": 58368,
"Validate_Only": 'false',
"Start_New_Container": 'true'
  }
}

    plexReq = requests.post(url,auth=HTTPBasicAuth, headers=headers, json=perameters)
    print(plexReq.request.headers)
    ####START HERE

    print(plexReq.status_code)
    response = requests.get(url)
    plexResponse = json.dumps(response.json)
    print(plexResponse)

'''

这是我使用POSTMAN时得到的结果。

{
"outputs": {
    "New_Container": null,
    "New_Serial_No": null,
    "Recorded_Master_Unit_No": null,
    "Recorded_Part_No": null,
    "Recorded_Quantity": null,
    "Recorded_Revision": null,
    "Recorded_Serial_No": null,
    "Result_Code": 5106,
    "Result_Error": true,
    "Result_Message": "Workcenter status does not allow production",
    "Validation_Failed": false
     },
     "tables": [],
    "transactionNo": "2069710"
     }

'''

python json api post request
1个回答
0
投票

不知道你说的 Printing to the screen?. PostMan是一个简单的API工具,用于制作 API 请求,而且它不是Python解释器,以便能够将其打印到屏幕上。

为了 parse it to use the response for further use? 没有办法解析获取的数据用于另一个请求。只能在请求的URL中手动完成。

编辑。这只适用于PostMan,如果你的请求来自于你的应用程序,那么就可以解决这个问题,见 此处 在这一点上。

© www.soinside.com 2019 - 2024. All rights reserved.