From d5f5aaf1c1ccd8f774a5003f5abf73bf1cf8291c Mon Sep 17 00:00:00 2001
From: llj <132905093+newwwwwwtree@users.noreply.github.com>
Date: 星期四, 30 四月 2026 10:56:20 +0800
Subject: [PATCH] 项目穿透控制器,修复接口签名post请求问题,增加自动登录信号接口
---
WebAPI/Service/SignatureVerifyAttribute.cs | 24 ++++++++++++++++++++----
1 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/WebAPI/Service/SignatureVerifyAttribute.cs b/WebAPI/Service/SignatureVerifyAttribute.cs
index 8f24798..1c9583a 100644
--- a/WebAPI/Service/SignatureVerifyAttribute.cs
+++ b/WebAPI/Service/SignatureVerifyAttribute.cs
@@ -74,17 +74,33 @@
}
else
{
+
+ var originalContentType = actionContext.Request.Content.Headers.ContentType;
+
+
var bodyBytes = await actionContext.Request.Content.ReadAsByteArrayAsync();
rawData = Encoding.UTF8.GetString(bodyBytes);
+
actionContext.Request.Content = new ByteArrayContent(bodyBytes);
- if (actionContext.Request.Content.Headers.ContentType != null)
+ if (originalContentType != null)
{
- actionContext.Request.Content.Headers.ContentType =
- new System.Net.Http.Headers.MediaTypeHeaderValue(
- actionContext.Request.Content.Headers.ContentType.MediaType);
+ actionContext.Request.Content.Headers.ContentType = originalContentType;
}
}
+ //else
+ //{
+ // var bodyBytes = await actionContext.Request.Content.ReadAsByteArrayAsync();
+ // rawData = Encoding.UTF8.GetString(bodyBytes);
+
+ // actionContext.Request.Content = new ByteArrayContent(bodyBytes);
+ // if (actionContext.Request.Content.Headers.ContentType != null)
+ // {
+ // actionContext.Request.Content.Headers.ContentType =
+ // new System.Net.Http.Headers.MediaTypeHeaderValue(
+ // actionContext.Request.Content.Headers.ContentType.MediaType);
+ // }
+ //}
rawData = rawData.Replace("'", "%27");
var signStr = rawData + "×tamp=" + timestamp + "&nonce=" + nonce + "&key=" + SecretKey;
var serverSign = ComputeHmacSha256(signStr, SecretKey);
--
Gitblit v1.9.1