如何在python的json负载中使用true或false?

2024-09-30 05:27:58 发布

您现在位置:Python中文网/ 问答频道 /正文

 def putApicall(self, versionId):
        url = 'https://' + testURL + '/api/apis/versions'
        payload = {
            "ProxyAPIList": {
                "ProductionEndpoint": [
                    {
                        "OAuth20Supported": "true",
                        "OAuthProvider": "Okta",
                        "OAuth10aSupported": false,
                        "ClientAuthPolicyOption": []
                    },
                    {
                        "OAuth20Supported": "true",
                        "OAuthProvider": "Azure",
                        "OAuth10aSupported": false,
                        "ClientAuthPolicyOption": []
                    }
                ]
            },
            "OperationsOAuthDetails": {
                "Operation": []
            },
            "APIVersionID": versionId
        }
        headers['Content-Type'] = 'application/json'
        result = requests.put(url, data=json.dumps(payload), headers=headers, cookies=cookie)

我收到一个错误,说它无法检测布尔值的'false'。有人能帮助我们如何有效地使用这个有效载荷吗


Tags: httpsselfjsonfalsetrueurldefheaders
1条回答
网友
1楼 · 发布于 2024-09-30 05:27:58

JSON (JavaScript Object Notation) is a lightweight data-interchange format。它看起来很像Javascript或Python,但实际上它是使用UTF-8字符编码标准的数据序列化表示。JSON可以加载到特定于程序语言的数据结构中,也可以从中转储,但一旦进入该语言,该语言的语法和语义就会占上风

JSON布尔值是truefalse,但它们必须转换为Python关键字TrueFalse表示的Python布尔对象

在您的例子中,您使用的是"true"-这是一个字符串,而不是JSON true,而false对于Python来说只是一个可以绑定到任何东西(或任何东西,都不会引起错误)的常规变量名。我不知道您的API是否需要字符串"true""false"或JSON布尔值。假设为布尔值,您的数据应该如下所示:

    payload = {
        "ProxyAPIList": {
            "ProductionEndpoint": [
                {
                    "OAuth20Supported": True,
                    "OAuthProvider": "Okta",
                    "OAuth10aSupported": False,
                    "ClientAuthPolicyOption": []
                },
                {
                    "OAuth20Supported": True,
                    "OAuthProvider": "Azure",
                    "OAuth10aSupported": False,
                    "ClientAuthPolicyOption": []
                }
            ]
        },
        "OperationsOAuthDetails": {
            "Operation": []
        },
        "APIVersionID": versionId
    }

相关问题 更多 >

    热门问题