python - requests提交的json.dumps不能被服务器解析
巴扎黑
巴扎黑 2017-04-18 10:27:08
0
2
719

背景:
现有一看上去是内嵌IE应用程序A,可以做一些查询等操作。

目的:
通过借助Wireshark对应用程A的通信过程分析,借助python的requests的库自行构造一个自己能掌控的程序B

状况:
在使用requests库,加载json格式的POST数据,执行特定请求时,遇到对方服务器的报错。

payload_data={"jsonstr":{
"pagesize":10,
"pageindex":1,
"start":"2017-03-01",
"end":"2017-03-13",
"keyword":"张三",
"status":"0"
}
}

r = requests.post(url, headers = headers_comm, data = json.dumps(payload_data))

Wireshark对程序A请求的侦听:

自行构造请求时的报错信息:

猜测这个请求的构造基本成功了,但对端应用程序解析我POST的数据时不能正常识别。
尝试过给json.dumps加, ensure_ascii=False的参数,但报错依旧。
如果这个猜测正确的话,POST数据应该怎样正确dumps?
如果这个猜测不正确,那么可能是哪里的原因?

巴扎黑
巴扎黑

모든 응답(2)
小葫芦

데이터에는 json.dump가 필요하지 않습니다. 데이터에 다음 jsonstr을 포함하려면 json.dump만 사용하면 됩니다.

洪涛

Response Code은 500입니다. 이는 역직렬화 중에 상대방이 오류를 범했음을 의미합니다.
예외 정보에 따라 서버는 다음과 같은 방법으로 역직렬화해야 합니다.

C#:

으아악

payload_data 형식이 잘못되었습니다. 중첩된 사전입니다.

payload_data을 다음으로 변경:
Python:

으아악

그렇습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!