From f059387edcaa0448c8161166839355bd8e389490 Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Tue, 28 Feb 2023 19:42:24 +0800 Subject: [PATCH] =?UTF-8?q?refactor(wxapi):=20=E4=BC=98=E5=8C=96=E5=BE=85?= =?UTF-8?q?=E9=AA=8C=E7=AD=BE=E5=AD=97=E6=AE=B5=E5=AD=97=E5=85=B8=E6=8E=92?= =?UTF-8?q?=E5=BA=8F=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Extensions/WechatApiClientEventExtensions.cs | 8 +++++--- .../Extensions/WechatApiClientParameterExtensions.cs | 10 +++------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientEventExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientEventExtensions.cs index 48863d34..8c92f778 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientEventExtensions.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientEventExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Xml.Linq; @@ -260,8 +260,10 @@ namespace SKIT.FlurlHttpClient.Wechat.Api if (callbackNonce == null) throw new ArgumentNullException(nameof(callbackNonce)); if (callbackSignature == null) throw new ArgumentNullException(nameof(callbackSignature)); - ISet set = new SortedSet(StringComparer.Ordinal) { client.Credentials.PushToken!, callbackTimestamp, callbackNonce }; - string sign = Utilities.SHA1Utility.Hash(string.Concat(set)); + List lstParams = new List() { client.Credentials.PushToken!, callbackTimestamp, callbackNonce }; + lstParams.Sort(StringComparer.Ordinal); + + string sign = Utilities.SHA1Utility.Hash(string.Concat(lstParams)); return string.Equals(sign, callbackSignature, StringComparison.OrdinalIgnoreCase); } diff --git a/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientParameterExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientParameterExtensions.cs index 9f6639c8..deb2e19b 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientParameterExtensions.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientParameterExtensions.cs @@ -54,13 +54,9 @@ namespace SKIT.FlurlHttpClient.Wechat.Api string nonce = Guid.NewGuid().ToString("N"); string cardType = "INVOICE"; - ISet sortedParams = new SortedSet(StringComparer.Ordinal); - sortedParams.Add(cardType); - sortedParams.Add(timestamp); - sortedParams.Add(client.Credentials.AppId); - sortedParams.Add(nonce); - sortedParams.Add(wxcardTicket); - string cardSign = Utilities.SHA1Utility.Hash(string.Join(string.Empty, sortedParams)).ToLower(); + List lstParams = new List() { cardType, timestamp, client.Credentials.AppId, nonce, wxcardTicket }; + lstParams.Sort(StringComparer.Ordinal); + string cardSign = Utilities.SHA1Utility.Hash(string.Join(string.Empty, lstParams)).ToLower(); return new ReadOnlyDictionary(new Dictionary() {