2013-02-21 3 views
0

Perl Apache2::REST 모듈을 사용하고 있으며 데이터를 반환하는 표준 방법은 $resp->data()이며 값을 할당하는 것입니다. 나는 나에게이원하는 perl REST-API 출력

<response message="" status="200"> 
    <data name="text"> 
    <tag1>4</tag1> 
    <tag2>5</tag2> 
    <tag3>6</tag3> 
    </data> 
</response> 

같은 응답을 제공이

my $text = { 
    'tag1' => 4, 
    'tag2' => 5, 
    'tag3' => 6, 
}; 

$resp->data()->{'text'} = {map { $_ => [$text ->{$_}] } keys %$text}; 

같은 다음

<response message="" status="200"> 
    <content name="text"> 
    <tag1>4</tag1> 
    <tag2>5</tag2> 
    <tag3>6</tag3> 
    </content> 
</response> 

같은에 대한 결과 응답을 변경하는 것이 가능 무엇을 가지고 내가 설정해야합니까/문제? 응답 결과를 변경하려고 시도했습니다.

답변

0

모듈 코드를 검사하여 솔루션을 찾았습니다 (또는 제 동료 중 한 명임).

REST-API는 사용자가 선택한 어떤 hashkey 허용합니다

delete $resp->{data}; # Deletion of the defaulr data element 
$resp->{content}->{'text'} = {map { $_ => [$text ->{$_}] } keys %$text};