You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解析API返回JSON中Message字段的键值对(如EventType、FriendlyType等)

实现方法

你提取到的Message内容属于逗号分隔的键值对格式,无需转JSON,直接拆分解析即可,通用逻辑和不同语言的实现方案如下:

通用解析逻辑

  • 先以逗号为分隔符,将整段字符串切割为多个独立的key=value片段
  • 对每个片段先去除首尾空白,再按第一个出现的等号切割为键、值两部分
  • 将所有键值对存入字典/对象结构,之后直接通过键名访问对应取值即可

Python 实现示例

# 已提取的Message字段内容
message_str = "EventType=Delete, FriendlyType=was deleted, Timestamp=2021-11-08T15:30:45Z, UserId=1111, UserName=me@me.com, IPAddr=(empty), AccountId=22222, AccountName=test-account, ProjectId=test-project"

message_dict = {}
for item in message_str.split(','):
    # split第二个参数设为1,仅按第一个等号拆分,避免值内含等号时解析出错
    key, value = item.strip().split('=', 1)
    message_dict[key] = value

# 取值测试
print(message_dict['EventType']) # 输出:Delete
print(message_dict['FriendlyType']) # 输出:was deleted

JavaScript 实现示例

// 已提取的Message字段内容
const messageStr = "EventType=Delete, FriendlyType=was deleted, Timestamp=2021-11-08T15:30:45Z, UserId=1111, UserName=me@me.com, IPAddr=(empty), AccountId=22222, AccountName=test-account, ProjectId=test-project"

const messageObj = {}
messageStr.split(',').forEach(item => {
    // 正则匹配第一个等号拆分,避免值内含等号时解析出错
    const [key, value] = item.trim().split(/=(.+)/)
    messageObj[key] = value
})

// 取值测试
console.log(messageObj.EventType) // 输出:Delete
console.log(messageObj.FriendlyType) // 输出:was deleted

注意事项

拆分键值对时必须限制仅按第一个等号拆分,避免部分value中包含等号时出现解析错误,上述示例已做对应兼容处理。

内容的提问来源于stack exchange,提问作者skylxne_

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 11:06:01