(data []byte)
| 37 | } |
| 38 | |
| 39 | func parseMCPHashIDJSON(data []byte) (string, error) { |
| 40 | data = bytes.TrimSpace(data) |
| 41 | if len(data) == 0 || bytes.Equal(data, []byte("null")) { |
| 42 | return "", fmt.Errorf("ID 不能为空") |
| 43 | } |
| 44 | |
| 45 | var raw string |
| 46 | if err := json.Unmarshal(data, &raw); err != nil { |
| 47 | return "", fmt.Errorf("ID 必须使用 HashID") |
| 48 | } |
| 49 | if raw == "" { |
| 50 | return "", fmt.Errorf("ID 不能为空") |
| 51 | } |
| 52 | if _, err := hashids.Decode(raw); err != nil { |
| 53 | return "", err |
| 54 | } |
| 55 | return raw, nil |
| 56 | } |
| 57 | |
| 58 | func MCPHashIDsToInt64(ids []MCPHashID) []int64 { |
| 59 | if len(ids) == 0 { |
no test coverage detected