mirror of
https://github.com/WhaleFell/SMSBoom.git
synced 2026-02-03 10:23:22 +08:00
🐞 fix: 已知的一个影响程序的bug
httpx 模块的 data 和 json 参数.有些服务器无法解码 json 数据只接受简单的表单,但是处理apis时把data都变成 dict 判断无意义。[stackoverflow](https://stackoverflow.com/questions/26685248/difference-between-data-and-json-parameters-in-python-requests-package)
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# encoding=utf8
|
||||
import httpx
|
||||
import json
|
||||
# import requests
|
||||
from .model import API, default_header
|
||||
|
||||
|
||||
@@ -12,6 +12,10 @@ def test_resq(api: API, phone) -> httpx.Response:
|
||||
"""
|
||||
api = api.handle_API(phone)
|
||||
with httpx.Client(headers=default_header, timeout=8) as client:
|
||||
# 这个判断没意义.....但是我不知道怎么优化...
|
||||
# https://stackoverflow.com/questions/26685248/difference-between-data-and-json-parameters-in-python-requests-package
|
||||
# Todo: json 和 data 表单发送的问题,有些服务器不能解释 json,只能接受表单
|
||||
# sol: 1. 添加额外字段判断...
|
||||
if not isinstance(api.data, dict):
|
||||
print("data")
|
||||
resp = client.request(method=api.method, headers=api.header,
|
||||
@@ -20,6 +24,16 @@ def test_resq(api: API, phone) -> httpx.Response:
|
||||
print('json')
|
||||
resp = client.request(
|
||||
method=api.method, headers=api.header, url=api.url, json=api.data)
|
||||
|
||||
# 验证不是 httpx 的问题...
|
||||
# if not isinstance(api.data, dict):
|
||||
# print("data")
|
||||
# resp = requests.request(method=api.method, headers=api.header,
|
||||
# url=api.url, data=api.data)
|
||||
# else:
|
||||
# print('json')
|
||||
# resp = requests.request(
|
||||
# method=api.method, headers=api.header, url=api.url, json=api.data)
|
||||
return resp
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user