json - KRL:将字符串解析为 JSON

标签 json krl

使用http:get() 后,我从pick哈希中的“内容”中接收到一个字符串:

response = http:get(webservice_url, {"key1": value1, "key2": value2});
json_resp = response.pick("$..content");

但是,由于 json_resp 是一个字符串而不是一个实际的 JSON 对象,我不能运行这样的命令:

value = json_resp.pick("$..string");

有没有办法告诉 KRL 我想将 json_resp 解析为 JSON?一个 eval() 或者什么的,也许?

最佳答案

decode()运算符(operator)做你想做的事。它对 JSON 字符串进行操作,尝试将其转换为 native KRL 对象。请注意,KRL 也有 encode()它对 native KRL 对象进行操作并返回该对象的 JSON 字符串表示形式。

response = http:get(webservice_url, {"key1": value1, "key2": value2});
json_resp = response.pick("$..content").decode();
value = json_resp.pick("$..string");
// will work since json_resp is now a native KRL object

关于json - KRL:将字符串解析为 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5462507/

相关文章:

c# - 我可以手动硬编码 JSON 对象以由 ASP.NET Web API 返回吗?

c# - System.Text.Json 序列化 Unicode 字符(如表情符号)的问题

json - 亚马逊上嵌套堆栈中的参数

datasource - :TEXT是KRL数据源的有效格式吗?

json - 如何优化此Powershell脚本,将JSON转换为CSV?

php - json_encode 将带有 Unicode(版权)字符的字符串编码为 null?

krl - 在函数内构建哈希

email - 更改转发电子邮件的主题行

krl - 我可以在 KRL query() 选择器中使用 > 运算符吗?

html - 如何避免两次 float 相同的内容?