大调整

This commit is contained in:
Bob.Song
2025-12-23 18:03:53 +08:00
parent 649e869038
commit 652aa00644
10072 changed files with 70310 additions and 197003 deletions

View File

@@ -1,9 +1,9 @@
using System;
using Assets.Scripts.Entity;
using Fantasy.Helper;
using NBC;
using Newtonsoft.Json;
namespace Assets.Scripts.Hotfix
namespace NBF
{
public static class JWTParseComponentSystem
{
@@ -11,7 +11,7 @@ namespace Assets.Scripts.Hotfix
public static bool Parse(this JWTParseComponent self, string toKen, out Payload payloadData)
{
payloadData = null;
try
{
// JWT通常是由三个部分组成的,Header,Payload,Signature。
@@ -22,6 +22,7 @@ namespace Assets.Scripts.Hotfix
Log.Error("Invalid JWT token");
return false;
}
// JWT的Payload不是标准的Base64格式因为咱们C#的Convert要求是一个标准的Base64格式。
// JWT的Payload是Base64URL格式,它里面的"-"替代成了"+","_"替代成了"/",需要把这些给还原成Base64格式
var basePayload = tokens[1].Replace('-', '+').Replace('_', '/');
@@ -41,19 +42,21 @@ namespace Assets.Scripts.Hotfix
// }
case 2:
{
basePayload +="==";
basePayload += "==";
break;
}
case 3:
{
basePayload +="=";
basePayload += "=";
break;
}
}
// 将修复后的字符串解码为数组
var basePayloadBytes = Convert.FromBase64String(basePayload);
var payload = System.Text.Encoding.UTF8.GetString(basePayloadBytes);
payloadData = JsonHelper.Deserialize<Payload>(payload);
payloadData =
JsonConvert.DeserializeObject<Payload>(payload); //JsonHelper.Deserialize<Payload>(payload);
return true;
}
catch (Exception e)