| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- using System.Collections.Generic;
- namespace GFGGame
- {
- public static class WebUrlUtil
- {
- // 从URL解析SDK参数
- public static Dictionary<string, object> ParseSDKParamsFromUrl(string url)
- {
- Dictionary<string, object> paramsDict = new Dictionary<string, object>();
- // 简单的URL参数解析
- int queryIndex = url.IndexOf('?');
- if (queryIndex != -1)
- {
- string query = url.Substring(queryIndex + 1);
- string[] pairs = query.Split('&');
- foreach (string pair in pairs)
- {
- string[] keyValue = pair.Split('=');
- if (keyValue.Length == 2)
- {
- string key = keyValue[0];
- string value = keyValue[1];
- // URL解码(简单实现,实际可能需要更完整的解码)
- value = value.Replace("%20", " ");
- // 根据SDK文档,我们知道可能的参数
- switch (key)
- {
- case "user_id":
- paramsDict["user_id"] = value;
- break;
- case "user_name":
- paramsDict["user_name"] = value;
- break;
- case "uuid":
- paramsDict["uuid"] = value;
- break;
- case "sign":
- paramsDict["sign"] = value;
- break;
- case "timestamp":
- paramsDict["timestamp"] = value;
- break;
- case "cp_ext":
- paramsDict["cp_ext"] = value;
- break;
- }
- }
- }
- }
- return paramsDict;
- }
- }
- }
|