期望值:第1行第1列(char 0)python

2024-09-30 20:32:23 发布

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

我是python的新手,尝试使用这些代码行解析应用程序中的数据

json_str = request.body.decode('utf-8') 
py_str = json.loads(json_str)

但是我在json.loads上得到了这个错误

Expecting value: line 1 column 1 (char 0)

这是我从angular app发送的json格式的数据(更新版)

Object { ClientTypeId: 6, ClientName: "asdasd", ClientId: 0, PhoneNo: "123", FaxNo: "123", NTN: "1238", GSTNumber: "1982", OfficialAddress: "sads", MailingAddress: "asdasd", RegStartDate: "17-Aug-2016", 15 more… }

这些是我在json_str中得到的值

ClientTypeId=5&ClientName=asdasd&ClientId=0&PhoneNo=123&FaxNo=123&NTN=123&GSTNumber=12&OfficialAddress=adkjh&MailingAddress=adjh&RegStartDate=09-Aug-2016&RegEndDate=16-Aug-2016&Status=1&CanCreateUser=true&UserQuotaFor=11&UserQuotaType=9&MaxUsers=132123&ApplyUserCharges=true&ApplyReportCharges=true&EmailInvoice=true&BillingType=1&UserCharges=132&ReportCharges=123&MonthlyCharges=123&BillingDate=16-Aug-2016&UserSessionId=324

我不知道有什么不对。。有人能告诉我错误是什么吗??在


Tags: 数据jsontrue错误augclientidstrloads
1条回答
网友
1楼 · 发布于 2024-09-30 20:32:23

您的数据不是JSON-formatted,甚至不是更新后的答案中包含的数据。您的数据是一个JavaScript对象,而不是一个编码字符串。请注意JSON中的“N”:Notation这是一种受JavaScript代码编写数据方式启发的格式,但运行时JavaScript数据不是用JSON表示的。您粘贴的“JSON”是您的浏览器对您表示对象的方式,它不是正确的JSON(这将是{"ClientTypeId": 6, ...}请注意属性名周围的引号)。在

当将这些数据发送到服务器时,必须对其进行编码。您认为您发送的是JSON编码的数据,但事实并非如此,而是“web表单编码”(类型为^{})的数据。在

现在,您必须学习如何从Angular发送JSON格式的数据,或者使用Python中正确的解析例程:^{}。根据所使用的库,可能还有一种方便的方法来访问数据,因为这是一个常见的用例。在

相关问题 更多 >