拥有一个返回部分JSON响应的应用程序,如何将对象/变量合并为一个?
我正在使用
$json = JSON->new->utf8->decode($response->content);
将响应转换为对象/变量,但每个单独一个。
现在我需要它将几个部分响应合并为一个。
如何做到这一点以及如何处理可能重复的项目以避免覆盖?
的更新: 的
为了更好地理解上述问题,请参阅下面的示例回复。
每个部分响应都具有相同的结构,但 'Groups'
中的数据不同, 'Message'
和 {{1 } 部分。最后一个回复来自 'Data'
。
'Finished' = true
答案 0 :(得分:0)
您可以按Hash::Merge
合并哈希值答案 1 :(得分:0)
这与JSON完全无关。您想合并两个数据结构。从你说的那个小,有三个数组要合并。您没有指定方式,因此您可能只想将新响应的元素附加到原始响应的元素中。
for (qw( Groups Message Data )) {
push @{ $orig->{answer}{$_} }, @{ $new->{answer}{$_} }
if $new->{answer}{$_};
}