yyl
2026-01-12 e82ef6fb213a061afe0dccfcf977ffe77fb93f05
Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts
2个文件已修改
53 ■■■■ 已修改文件
Main/System/Message/MessageWin.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Utility/OperationLogCollect.cs 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Message/MessageWin.cs
@@ -1,14 +1,8 @@
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;
using DG.Tweening;
using Cysharp.Threading.Tasks;
using System;
using System.Text.RegularExpressions;
using DG.Tweening;
public class MessageWin : UIBase
{
Main/Utility/OperationLogCollect.cs
@@ -209,11 +209,52 @@
        tables["ToRoleID"] = UIHelper.ServerStringTrim(toPlayer);
        tables["Level"] = PlayerDatas.Instance.baseData.LV.ToString();
        tables["VIPLevel"] = PlayerDatas.Instance.baseData.VIPLv.ToString();
        tables["Content"] = WWW.EscapeURL(UIHelper.TrimContentToServer(content));
        tables["Content"] = UrlEncode(UIHelper.TrimContentToServer(content));
        tables["DeviceFlag"] = SDKUtils.Instance.Device == null ? string.Empty : SDKUtils.Instance.Device.uniqueID;
        HttpRequest.Instance.RequestHttpGet(StringUtility.Concat(chatReportUrl, HttpRequest.HashtablaToString(tables)), HttpRequest.defaultHttpContentType);
        var chatStr = StringUtility.Concat(chatReportUrl, HttpRequest.HashtablaToString(tables));
        HttpRequest.Instance.RequestHttpGet(chatStr, HttpRequest.defaultHttpContentType);
#endif
    }
    /// <summary>
    /// 自定义 URL 编码函数(防止 AOT 裁剪)
    /// </summary>
    public string UrlEncode(string value)
    {
        if (string.IsNullOrEmpty(value))
            return string.Empty;
        System.Text.StringBuilder result = new System.Text.StringBuilder();
        foreach (char c in value)
        {
            // 不需要编码的字符
            if ((c >= 'a' && c <= 'z') ||
                (c >= 'A' && c <= 'Z') ||
                (c >= '0' && c <= '9') ||
                c == '-' || c == '_' || c == '.' || c == '~')
            {
                result.Append(c);
            }
            else if (c == ' ')
            {
                // 空格替换为 +
                result.Append('+');
            }
            else
            {
                // 其他字符编码为 %XX 格式
                byte[] bytes = System.Text.Encoding.UTF8.GetBytes(c.ToString());
                foreach (byte b in bytes)
                {
                    result.Append('%');
                    result.Append(b.ToString("X2"));
                }
            }
        }
        return result.ToString();
    }
}