2017-11-04 1 views
1

AJAX 호출에 사용되는 경로가 있습니다. 그것은 DB에서 항목을 가져오고 JSON 배열을 반환합니다.JSON 답장에서 상위 요소 제거

내가 사용 : 나는

{ 
    [ 
    { 
     "_id":"1", 
     "name":"Asd1" 
     }, 
    { 
     "_id":"2", 
     "name":"Asd2" 
    } 
    ] 
} 

아주 기본적으로 :

return reply({ 
    myArray 
}).code(200); 

모든 작동하지만 브라우저에서 내 출력은 다음과 같습니다

{ 
    "myArray":[ 
    { 
     "_id":"1", 
     "name":"Asd1" 
     }, 
    { 
     "_id":"2", 
     "name":"Asd2" 
    } 
} 

하지만 제가 필요한 것은 "myArray"부모 요소를 없애고 거기에 배열을 남겨 둘 필요가 있습니다. 간단한 작업처럼 보이지만 어디서나 설명서 나 샘플을 찾을 수 없습니다.

감사합니다, 마르코

+1

필요한 json이 잘못되었습니다. – pirs

+0

유효한 JSON과 같은 배열을 가질 수 없습니다. https : //jsonlint.com/ – WilomGfx

+0

맞습니다. 사실 나는 당신이 제안하는 정확한 형태로 배열이 필요합니다. – daliz

답변

2

이 :

{ 
    [ 
    { 
     "_id":"1", 
     "name":"Asd1" 
    }, 
    { 
     "_id":"2", 
     "name":"Asd2" 
    } 
    ] 
} 

가 무효 JSON 표기법입니다. 중괄호 안에는 키가 문자열이고 값이 유효한 JSON 값 (문자열, 숫자, 부울 값, null, 배열 또는 객체) 인 키 - 값 쌍이 있어야합니다. 유효한 JSON이다

[ 
    { 
    "_id":"1", 
    "name":"Asd1" 
    }, 
    { 
    "_id":"2", 
    "name":"Asd2" 
    } 
] 

:

아마도 당신이 기대하는 것은 단지 배열입니다. , JSON 표기법에 대한 추가 정보를 원하시면

return reply(myArray).code(200); 

the article on MDN을보고 당신이 볼 수있는 JSON이 유효하거나하지 않은 경우에 더 나은 직관을 개발하기 위해 JSON.stringify 놀이 :이 경우, 당신은 단순히 당신의 reply 함수에 보낼 수 있습니다.

+0

json에 배열을 직접 두는 것은 좋지 않습니다. 뭐든간에 ... – pirs

+0

내가 왜 그걸 처음 시도하지 않았는지 모르겠다. 도움을 주셔서 감사합니다. – daliz