当前位置: 首页 > news >正文

复杂json解析(其中有一个key的value是json格式的字符串)

app上报的参数如下:

{"clientId": "8517895440514039afcf6d3e5d7832ae","dua": "SN=DOCKCJPH90_GA&VN=900042418&BN=0&VC=Xiaomi&MO=M2012K11AC&RL=1080_2239&CHID=unknown_unknown&LCID=&RV=&OS=Android13&DV=V1","phone": "15071343418","proxyNode": [{"channelCode": "kuaifenxiao","clientId": "8517895440514039afcf6d3e5d7832ae","cookie": "did=web_xwaap1nt5xdqr60axnls5reb9u0amfb3; userId=247914626; sid=kuaishou.shop.b; kuaishou.shop.b_st=ChJrdWFpc2hvdS5zaG9wLmIuc3QSoAFJS2UrZiuakO75bVK3FJQq8SQ9C6ztcMNfyd_m7biZQyfMuZ6Lhn6YYEu8YCagfGi4LzAD58G3DHnf8yZGwbLaNuGK286yUxWSydlfwf23Lw4kLR33GPmkN-6fiszeJBQ-U8FvihnbpF4k1uZPnDjBstbNduCCxyKlHH5B5uUCMy3YkCW3t4UE533HGhgDyj0LwqnQjtOjTV9awG7f2vIcGhKd_ML3fWEjTvpP6f9oisfIpAIiILrfmxjQ7acolLSEaaNOXIfcp0ITOpSFhJNSBYQut2NHKAUwAQ; kuaishou.shop.b_ph=8682d98ae1291dacdcdbba835f0794f31e5f","other": "{\"userId\":247914626,\"userNick\":\"duzzi\",\"promotionAbility\":false}","phone": "15071343418","uniqueId": ""},{"channelCode": "douyin","clientId": "8517895440514039afcf6d3e5d7832ae","cookie": "_tea_utm_cache_2906=undefined; ttwid=1%7CnWBixC4hbDtwqjIz8ph7PTjSA_06-mIFxsjfKOzsuWI%7C1715738511%7C3b728a1109088f7357acb27710208586cf89fd55d5f10a7cdff04c425b941260; bd_ticket_guard_client_data=eyJiZC10aWNrZXQtZ3VhcmQtdmVyc2lvbiI6MiwiYmQtdGlja2V0LWd1YXJkLWl0ZXJhdGlvbi12ZXJzaW9uIjoxLCJiZC10aWNrZXQtZ3VhcmQtcmVlLXB1YmxpYy1rZXkiOiJCTUptc2tmK1E2K3RIbmZ3VTY3QjUvZ3pLTVUxdmJQRXBYTk4rRHhNZDdLSTFOWVkwc2Evc2xnbVhtSjJETXNVSXBZaFRqYmFKSGpUeHM0Qit1clhNTXc9IiwiYmQtdGlja2V0LWd1YXJkLXdlYi12ZXJzaW9uIjoxfQ%3D%3D; bd_ticket_guard_client_web_domain=2; passport_csrf_token=d3fda2e10c9f6722cd9f7e2c40bf3751; passport_csrf_token_default=d3fda2e10c9f6722cd9f7e2c40bf3751; msToken=59BiDkrxFVqIzIonFt7gvhaa5HmX_0ncHpFvHWFclvjlhzM7fMRVqWgBySOvEyLGMz1RDdZMpaStjpZGWqKN9Xkb12DwQPfucQPyylPKIyEGLO764l_mluunQnm3; tt_scid=DD4adatc6sh6zwZxLMMSqbglPqMPgJx8YqZY.HTSXV9RdfVnMIthNLOCB6My3xP13264; passport_assist_user=CjxOP0DkL7yqSHt3RyAzf1RwfdcgXq7G3JDw3RIIcdnq0IqfWLF-67XFwq7Dct1GyhVokCunTs7Ebc9959caSgo8YRyhb2oFn0wrhWlp-awSs5oH6XIFR-wEAeADN5FddWNSIo3adrgTeJqYcKEoYBSRJKB9CXwdFhtHGw1QEICq0Q0Yia_WVCABIgED8pgI6w%3D%3D; n_mh=FzeIA2bdW3iCBvrz1qr1PcdgQMqdsPt-UXF2W7RNLF8; sso_uid_tt=c16a5e7f16cfd256313a4a8c9e655b1a; sso_uid_tt_ss=c16a5e7f16cfd256313a4a8c9e655b1a; toutiao_sso_user=1684f0da2dd53ed3b328f9d402b91aff; toutiao_sso_user_ss=1684f0da2dd53ed3b328f9d402b91aff; sid_ucp_sso_v1=1.0.0-KDY4OGVlMjFjZTIzNGIxODAyM2FhNjc1OWQ4MTQwNmYxNWU4OTc3MjgKHQjUw8nrvQEQpq-QsgYY2hYgDDCF6Pq-BTgGQPQHGgJsZiIgMTY4NGYwZGEyZGQ1M2VkM2IzMjhmOWQ0MDJiOTFhZmY; ssid_ucp_sso_v1=1.0.0-KDY4OGVlMjFjZTIzNGIxODAyM2FhNjc1OWQ4MTQwNmYxNWU4OTc3MjgKHQjUw8nrvQEQpq-QsgYY2hYgDDCF6Pq-BTgGQPQHGgJsZiIgMTY4NGYwZGEyZGQ1M2VkM2IzMjhmOWQ0MDJiOTFhZmY; msToken=rTpCZ4RO1QbkQXIfs-Wrk7xGyCvImv6NOQewVFu4zIVm5Um8IAfjuhEtXjjfSZO9noN9mbXFBD1awSJ-N2pa8Petu6Oz3bo9-awUINoTM_YEx6Gp_DvJCcxKpjw5; odin_tt=7e1e5fac28232bed75e2ce3ecbf70cc87e80c1b34bc56312de4aa05dc02e6e4f990aca679b59e5be079e6fa347525de1; passport_auth_status=d533947c6fbc84f49ae246acf1cd3066%2C; passport_auth_status_ss=d533947c6fbc84f49ae246acf1cd3066%2C; bd_ticket_guard_server_data=eyJ0aWNrZXQiOiI2ZTQ2ZDNkMTQ4NTQ2ZWRjMDZiYTMyMGQ0NDg1ODEyYiIsInRzX3NpZ24iOiJ0cy4xLjAwODA4MWViMGEyYmIwYjMzZjc2NWQ2MTA5MmNlY2M1ZWZjMTNmNzcwODM0ZjU2OTY3YWQ3M2FmMTkwNWJmZTljNGZiZTg3ZDIzMTljZjA1MzE4NjI0Y2VkYTE0OTExY2E0MDZkZWRiZWJlZGRiMmUzMGZjZThkNGZhMDI1NzVkIiwiY2xpZW50X2NlcnQiOiJwdWIuQk1KbXNrZitRNit0SG5md1U2N0I1L2d6S01VMXZiUEVwWE5OK0R4TWQ3S0kxTllZMHNhL3NsZ21YbUoyRE1zVUlwWWhUamJhSkhqVHhzNEIrdXJYTU13PSJ9; bd_ticket_guard_web_domain=2; sid_guard=6e46d3d148546edc06ba320d4485812b%7C1715738536%7C5184000%7CSun%2C+14-Jul-2024+02%3A02%3A16+GMT; uid_tt=9419f8f75cb08d26cd22dda8547af9d3; uid_tt_ss=9419f8f75cb08d26cd22dda8547af9d3; sid_tt=6e46d3d148546edc06ba320d4485812b; sessionid=6e46d3d148546edc06ba320d4485812b; sessionid_ss=6e46d3d148546edc06ba320d4485812b; sid_ucp_v1=1.0.0-KDM5NDg2NGEyNTQ1NmE4ZGU0M2YxZDJjMDE4MjEyODAxNTBlMmNiNGEKGQjUw8nrvQEQqK-QsgYY2hYgDDgGQPQHSAQaAmxmIiA2ZTQ2ZDNkMTQ4NTQ2ZWRjMDZiYTMyMGQ0NDg1ODEyYg; ssid_ucp_v1=1.0.0-KDM5NDg2NGEyNTQ1NmE4ZGU0M2YxZDJjMDE4MjEyODAxNTBlMmNiNGEKGQjUw8nrvQEQqK-QsgYY2hYgDDgGQPQHSAQaAmxmIiA2ZTQ2ZDNkMTQ4NTQ2ZWRjMDZiYTMyMGQ0NDg1ODEyYg; csrf_session_id=fbeac00e4e14f1eef5c0ca3f2bb7b9c7","other": "{\"uid\":\"50959901140\",\"nickname\":\"duzzi\",\"with_fusion_shop_entry\":false,\"localStorage\":{\"security-sdk\\/s_sdk_crypt_sdk\":\"{\\\"data\\\":\\\"{\\\\\\\"ec_privateKey\\\\\\\":\\\\\\\"-----BEGIN PRIVATE KEY-----\\\\\\\\r\\\\\\\\nMIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggReMEBDyckfHliYY\\\\\\\\r\\\\\\\\nLI6fsK8ajep\\/MLxPGhDBfWpeboahRANCAATCZrJH\\/kOvrR538FOuwef4MyjFNb2z\\\\\\\\r\\\\\\\\nxKVzTfg8THeyiNTWGNLGv7JYJl5idgzLFCKWIU422iR408bOAfrq1zDM\\\\\\\\r\\\\\\\\n-----END PRIVATE KEY-----\\\\\\\\r\\\\\\\\n\\\\\\\",\\\\\\\"ec_publicKey\\\\\\\":\\\\\\\"-----BEGIN PUBLIC KEY-----\\\\\\\\r\\\\\\\\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwmayR\\/5Dr60ed\\/BTrsHn+DMoxTW9\\\\\\\\r\\\\\\\\ns8Slc034PEx3sojU1hjSxr+yWCZeYnYMyxQiliFONtokeNPGzgH66tcwzA==\\\\\\\\r\\\\\\\\n-----END PUBLIC KEY-----\\\\\\\\r\\\\\\\\n\\\\\\\",\\\\\\\"ec_csr\\\\\\\":\\\\\\\"-----BEGIN CERTIFICATE REQUEST-----\\\\\\\\r\\\\\\\\nMIIBEjCBuQIBADAnMQswCQYDVQQGEwJDTjEYMBYGA1UEAwwPYmRfdGlja2V0X2d1\\\\\\\\r\\\\\\\\nYXJkMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwmayR\\/5Dr60ed\\/BTrsHn+DMo\\\\\\\\r\\\\\\\\nxTW9s8Slc034PEx3sojU1hjSxr+yWCZeYnYMyxQiliFONtokeNPGzgH66tcwzKAw\\\\\\\\r\\\\\\\\nMC4GCSqGSIb3DQEJDjEhMB8wHQYDVR0RBBYwFIISY3JlYXRvci5kb3V5aW4uY29t\\\\\\\\r\\\\\\\\nMAoGCCqGSM49BAMCA0gAMEUCIQCXOKAEftf3wSvYHQziKj\\/MEwxTQ5WIKSLzBm7f\\\\\\\\r\\\\\\\\nX\\/kLAgIgQXsACAB69Crnl6ETSQXZMvoMEh79EG7WGK2A9Un84Lk=\\\\\\\\r\\\\\\\\n-----END CERTIFICATE REQUEST-----\\\\\\\\r\\\\\\\\n\\\\\\\"}\\\"}\"}}","phone": "15071343418","uniqueId": ""},{"channelCode": "juliangbaiying","clientId": "8517895440514039afcf6d3e5d7832ae","cookie": "","other": "","phone": "","uniqueId": ""},{"channelCode": "shipinhao","clientId": "8517895440514039afcf6d3e5d7832ae","cookie": "","other": "","phone": "","uniqueId": ""},{"channelCode": "kuaishou","clientId": "8517895440514039afcf6d3e5d7832ae","cookie": "","other": "","phone": "","uniqueId": ""}],"sUserId": "100005","version": "900042418"
}

其中other本身是一个字符串,而这个字符串的内容是JSON格式的。

上报接口:
在这里插入图片描述
在这里插入图片描述

我要获取other key中的localStorage key的中所有键值对:

正确做法:

JsonObject jsonObject = GsonUtil.toBean(proxyNodeInfo.getOther(), JsonElement.class).getAsJsonObject();JsonObject localStorage = jsonObject.get("localStorage").getAsJsonObject();
Map<String, String> hashMap = new HashMap<String, String>() {{for (Entry<String, JsonElement> entry : localStorage.entrySet()) {put(entry.getKey(), entry.getValue().getAsString());}
}};

在这里插入图片描述

原来的错误做法:

Map<String,Object> otherInfo= GsonUtil.toBean(StringEscapeUtils.unescapeJson(proxyNodeInfo.getOther()),new TypeToken<Map<String,Object>>(){}.getType());

相关文章:

复杂json解析(其中有一个key的value是json格式的字符串)

app上报的参数如下: {"clientId": "8517895440514039afcf6d3e5d7832ae","dua": "SNDOCKCJPH90_GA&VN900042418&BN0&VCXiaomi&MOM2012K11AC&RL1080_2239&CHIDunknown_unknown&LCID&RV&OSAndroid13&…...

线程池的一些问题

核心线程数1.最大线程5.队列5.存活时间10s 1.场景一 如果核心线程数.被一直占用得不到释放.新进来1个任务.会怎么样?答: 会在队列中中死等. 只要进来的任务.不超过队列的长度,就会一直挡在队列中死等 package com.lin;import java.util.concurrent.Executors; import java.u…...

企业或者个体户为什么会经营异常?

在复杂多变的市场经济环境中&#xff0c;无论是企业还是个体工商户&#xff0c;都可能遭遇经营异常的情况。及时识别这些预警信号并采取有效措施&#xff0c;对于避免潜在风险、保持健康发展至关重要。本文将深入探讨企业与个体户常见的经营异常类型、识别方法以及应对策略&…...

ROS从入门到精通4-3:制作Docker镜像文件Dockerfile

目录 0 专栏介绍1 为什么需要Dockerfile&#xff1f;2 Dockerfile书写原则3 Dockerfile常用指令3.1 FROM3.2 MAINTAINER3.3 RUN3.4 ADD3.5 COPY3.6 CMD3.7 ENV3.8 EXPOSE3.9 WORKDIR3.10 ARG 4 Dockerfile构建ROS工程实例 0 专栏介绍 本专栏旨在通过对ROS的系统学习&#xff0…...

【CV】计算机视觉是什么?

计算机视觉是一门研究如何使机器“看”的学科&#xff0c;旨在实现从图像或视频中获取信息的技术和方法。它涵盖了图像处理、模式识别、机器学习等多个领域&#xff0c;是人工智能领域的重要分支之一。以下是计算机视觉的一般概要介绍&#xff1a; 概要介绍&#xff1a; 图像…...

如何在Vue中实现鼠标悬浮展示与隐藏弹窗的功能

如果你需要鼠标在元素和弹窗上时保持弹窗显示&#xff0c;而鼠标离开这两者时隐藏弹窗&#xff0c;你可以使用一个稍微复杂的逻辑来处理鼠标的进入和离开事件。 这通常涉及到延时关闭弹窗&#xff0c;以便给用户足够的时间从元素移动到弹窗上&#xff0c;而不触发弹窗关闭。以…...

03 Linux编程-进程

1、进程的相关概念 1.1 程序与进程 程序是静态的概念&#xff0c;进程是程序的一次运行活动。 1.2 查看系统中有哪些进程 ps #只显示一小部分进程 ps -aux #会打印当前所有进程 ps -aux|grep init #使用grep筛选出只含有init的进程top #运行显示的进程有点类似windows…...

Hbuild-X运行ios基座app

一、说明 ios真机第一次运行的时候需要下载插件&#xff0c;这个都是自动监测&#xff0c;自动下载的&#xff0c;不用多说。ios真机运行是需要签名的&#xff0c;不然就会报以下错误。如何制作免费的签名证书呢&#xff0c;需要借助爱思助手来完成。 二、安装爱思助手 &…...

Node.js基础:从入门到实战

初识 Node.js 与内置模块 &#xff08;初识&#xff09; 1、知道什么是node.js 2、知道node.js可以做什么 3、node.js 中js的组成部分 &#xff08;内置模块&#xff09; 4、用 fs 模块读写操作文件 5、使用 path 模块处理路径 6、使用http 模块写一个基本的web服务器 初识 N…...

考研408笔记总结~

目录 一.数据结构 二.计算机组成原理 三.操作系统 四.计算机网络 私以为边看视频&#xff0c;边做笔记会更专注些&#xff0c;大家需要自取。欢迎大家和我一起探讨考研的问题&#xff0c;包括不仅限于专业课&#xff0c;数学&#xff0c;英语等等......&#xff0c;想说什么…...

使用在线工具等方式下载推特视频

使用在线工具等方式下载推特视频 使用在线工具 Visit a Twitter video downloader website: Websites like twdown.net, twittervideodownloader.com, and savevideo.me offer services to download Twitter videos.Paste the Twitter video URL into the designated input bo…...

性能优化:几方面考虑

我们可以继续再考虑下关于性能优化&#xff0c;我们还能从哪些方面着手呢&#xff1f; 1. 代码层面&#xff1a; 使用更高效的数据结构和算法。使用缓存避免多次数据库交互减少不必要的计算和内存分配。利用并行和异步编程提高性能。使用性能分析工具定位和优化瓶颈。 2. We…...

学习大数据:论学习Spark的重要性

随着科技的不断发展&#xff0c;大数据已经成为了当今社会的热门话题。大数据技术的出现&#xff0c;为我们提供了处理海量数据的新方法&#xff0c;使得我们能够从这些数据中挖掘出有价值的信息。在众多的大数据处理框架中&#xff0c;Apache Spark无疑是最为出色的一种。本文…...

学习java第七十一天

DI&#xff1a;依赖注入 依赖注入是spring容器中创建对象时给其设置依赖对象的方式&#xff0c;比如给spring一个清单&#xff0c;清单中列出了需要创建B对象以及其他的一些对象&#xff08;可能包含了B类型中需要依赖对象&#xff09;&#xff0c;此时spring在创建B对象的时候…...

Altium Designer PCB快捷键设置

6&#xff09;PCB修改快捷键&#xff0c;并自定义工具栏 添加boardlayerset系统命令。 修改系统脚本&#xff0c; 在D:\Program Files\Altium\AD18\System下&#xff0c;找到advpcb.rcs文件&#xff0c;打开。 Tree MNPCB_LayerSets CaptionManage Layer Se&ts Popup Emp…...

玩转Matlab-Simscape(初级)- 08 - 基于Solidworks、Matlab Simulink、COMSOL的协同仿真(案例实战)

** 玩转Matlab-Simscape&#xff08;初级&#xff09;- 08 - 基于Solidworks、Matlab Simulink、COMSOL的协同仿真&#xff08;案例实战&#xff09; ** 目录 玩转Matlab-Simscape&#xff08;初级&#xff09;- 08 - 基于Solidworks、Matlab Simulink、COMSOL的协同仿真&…...

vue嵌套路由

一、嵌套 children配置 1.父类路由 mymusic 2.子类路由 musicson 1.创建MusicSon组件 <template><div><p>从前和后来</p><p>唯一</p><p>运气来的似有若无</p></div> </template><script>export defaul…...

视频降噪算法 hqdn3d 原理分析

视频降噪 视频降噪是一种处理技术&#xff0c;旨在减少视频中的噪声&#xff0c;提高画面质量。噪声可能来自多种源头&#xff0c;包括摄像机的传感器、压缩算法、传输过程中的干扰等。降噪处理对于视频监控、视频会议、电影后期制作以及任何需要高画质输出的应用场景都非常重…...

Ansys Mechanical|屈曲分析技术

屈曲分析的基本概念 当受拉杆件的应力达到屈服极限或强度极限时&#xff0c;将引起塑性变形或断裂。这些是由于强度不足所引起的失效。 在工程中&#xff0c;我们会注意到当细长杆件受压时&#xff0c;表现出与强度失效完全不同的性质。当杆件受压超过某一临界值时&#xff0…...

【大模型微调】一文掌握7种大模型微调的方法

本篇文章深入分析了大型模型微调的基本理念和多样化技术&#xff0c;细致介绍了LoRA、适配器调整(Adapter Tuning)、前缀调整(Prefix Tuning)等多个微调方法。详细讨论了每一种策略的基本原则、主要优点以及适宜应用场景&#xff0c;使得读者可以依据特定的应用要求和计算资源限…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来&#xff0c;Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件

今天呢&#xff0c;博主的学习进度也是步入了Java Mybatis 框架&#xff0c;目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学&#xff0c;希望能对大家有所帮助&#xff0c;也特别欢迎大家指点不足之处&#xff0c;小生很乐意接受正确的建议&…...

django filter 统计数量 按属性去重

在Django中&#xff0c;如果你想要根据某个属性对查询集进行去重并统计数量&#xff0c;你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求&#xff1a; 方法1&#xff1a;使用annotate()和Count 假设你有一个模型Item&#xff0c;并且你想…...

Golang dig框架与GraphQL的完美结合

将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用&#xff0c;可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器&#xff0c;能够帮助开发者更好地管理复杂的依赖关系&#xff0c;而 GraphQL 则是一种用于 API 的查询语言&#xff0c;能够提…...

【项目实战】通过多模态+LangGraph实现PPT生成助手

PPT自动生成系统 基于LangGraph的PPT自动生成系统&#xff0c;可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析&#xff1a;自动解析Markdown文档结构PPT模板分析&#xff1a;分析PPT模板的布局和风格智能布局决策&#xff1a;匹配内容与合适的PPT布局自动…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

【Oracle】分区表

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

AI病理诊断七剑下天山,医疗未来触手可及

一、病理诊断困局&#xff1a;刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断"&#xff0c;医生需通过显微镜观察组织切片&#xff0c;在细胞迷宫中捕捉癌变信号。某省病理质控报告显示&#xff0c;基层医院误诊率达12%-15%&#xff0c;专家会诊…...

Leetcode33( 搜索旋转排序数组)

题目表述 整数数组 nums 按升序排列&#xff0c;数组中的值 互不相同 。 在传递给函数之前&#xff0c;nums 在预先未知的某个下标 k&#xff08;0 < k < nums.length&#xff09;上进行了 旋转&#xff0c;使数组变为 [nums[k], nums[k1], …, nums[n-1], nums[0], nu…...