lesscode-flask 0.2.102__tar.gz → 0.2.104__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/PKG-INFO +1 -1
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/__init__.py +1 -1
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/decorator/cache.py +2 -1
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/sign/signature.py +4 -5
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask.egg-info/PKG-INFO +1 -1
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/query_runner/dameng.py +5 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/README.md +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/app.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/db/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/db/datasource.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/db/executor.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/export_data/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/export_data/data_download_handler.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/log/access_log_handler.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/model/access_log.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/model/base_model.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/model/parameterized_query.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/model/resource_param_template.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/model/response_result.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/model/user.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/model/user_limit_policy.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/service/access_log_service.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/service/base_service.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/service/resource_param_template_service.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/setting/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/setup/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/signals.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/static/swagger.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/decorator/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/decorator/sql_injection.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/decorator/swagger.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/dify_utils.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/file/file_exporter.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/file/file_utils.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/fs_util.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/helpers.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/json/NotSortJSONProvider.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/limit/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/limit/consecutive/consecutive_limiter_handler.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/limit/consecutive/redis_consecutive_limiter.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/limit/limit_util.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/limit/req/rate_limiter_handler.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/limit/req/redis_rate_limiter.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/limit/req_count/count_limiter_handler.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/limit/req_count/redis_count_limiter.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/oss/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/oss/aliyun_oss.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/oss/ks3_oss.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/oss/minio_oss.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/redis/redis_helper.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/request/request.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/sign/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/swagger/swagger_template.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/swagger/swagger_util.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/task/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/task/task_helper.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/thread/thread_utils.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/wsgi.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask.egg-info/SOURCES.txt +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask.egg-info/dependency_links.txt +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask.egg-info/requires.txt +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask.egg-info/top_level.txt +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/query_runner/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/query_runner/clickhouse.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/query_runner/elasticsearch.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/query_runner/kingbase.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/query_runner/mysql.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/query_runner/pg.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/settings/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/settings/helpers.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/utils/__init__.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/redash/utils/requests_session.py +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/setup.cfg +0 -0
- {lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/setup.py +0 -0
|
@@ -133,7 +133,8 @@ def format_insert_key(signature, func_name, args, params):
|
|
|
133
133
|
if k != "self":
|
|
134
134
|
_args.append(f"{k}={json.dumps(params[k])}")
|
|
135
135
|
str_insert_key = "&".join([str(x) for x in _args])
|
|
136
|
-
headers = {key: value for key, value in request.headers if
|
|
136
|
+
headers = {key: value for key, value in request.headers if
|
|
137
|
+
key in ["App-Key", "Data-Source-Id", "Industry-Owner-Sign"]}
|
|
137
138
|
for h in headers:
|
|
138
139
|
str_insert_key = str_insert_key + "&" + str(headers[h])
|
|
139
140
|
str_insert_key = app_config.get("ROUTE_PREFIX") + "#" + func_name + "#" + str_insert_key
|
|
@@ -8,6 +8,7 @@ from flask import request
|
|
|
8
8
|
|
|
9
9
|
from lesscode_flask.model.response_result import ResponseResult
|
|
10
10
|
from lesscode_flask.utils.redis.redis_helper import RedisHelper
|
|
11
|
+
from lesscode_flask.utils.sign.body_canonical import canonicalize_body_bytes
|
|
11
12
|
|
|
12
13
|
SIGN_ERROR_MESSAGE = "未知错误"
|
|
13
14
|
SIGN_ERROR_CODE_MAP = {
|
|
@@ -37,12 +38,10 @@ def _fail_sign(error_key: str):
|
|
|
37
38
|
|
|
38
39
|
|
|
39
40
|
def _body_sha256() -> str:
|
|
40
|
-
#
|
|
41
|
+
# JSON 请求先做规范化再哈希,避免中间链路重排字段顺序后签名失配。
|
|
41
42
|
body_bytes = request.get_data(cache=True) or b""
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
logging.info("body_bytes结束")
|
|
45
|
-
return hashlib.sha256(body_bytes).hexdigest()
|
|
43
|
+
canonical_body_bytes = canonicalize_body_bytes(body_bytes, request.content_type or "")
|
|
44
|
+
return hashlib.sha256(canonical_body_bytes).hexdigest()
|
|
46
45
|
|
|
47
46
|
|
|
48
47
|
def _is_upload_request() -> bool:
|
|
@@ -12,6 +12,11 @@ except ImportError:
|
|
|
12
12
|
logging.error("dmPython is not installed, run: pip install dmPython")
|
|
13
13
|
dmPython = None
|
|
14
14
|
enabled = False
|
|
15
|
+
try:
|
|
16
|
+
import nspydm as dmPython
|
|
17
|
+
enabled = True
|
|
18
|
+
except ImportError as e:
|
|
19
|
+
logging.error("ns-pydm is not installed, run: pip install ns-pydm")
|
|
15
20
|
|
|
16
21
|
logger = logging.getLogger(__name__)
|
|
17
22
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/model/parameterized_query.py
RENAMED
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/model/resource_param_template.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/service/access_log_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/decorator/__init__.py
RENAMED
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/decorator/sql_injection.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/file/file_exporter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/json/NotSortJSONProvider.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/redis/redis_helper.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/swagger/swagger_template.py
RENAMED
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/swagger/swagger_util.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask/utils/thread/thread_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.2.102 → lesscode_flask-0.2.104}/lesscode_flask.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|