2011-07-30 4 views
1

노드에서 Express 및 Cradle을 사용하여 작동하지 않는 _list를 호출했습니다. 다른 전화는 _view로 이동하여 정상적으로 작동합니다. Cradle documentation에는 _list에 섹션이 포함되어 있지 않지만, this GitHub readme에서 _view와 (과) 똑같이 작동해야합니다. couch_url 변수 그냥 일반 HTTP 요청과 같다Cradle을 사용하여 CouchDB _list 결과를 얻는 방법

if(isList){ 
    db.list(couch_url, function (err, res) { 
     if(err){ 
      console.log("error couchdb list", err); 
     }else{ 
      //console.log(res); 
      callback(JSON.stringify(res)); 
     } 
    });  
} 

: (크래들에 대한 Model3D/convert/All를 얻기 위해 제거 된 경로 지정자 (_design, _view, _list)을 제외하고 myCouch/_design/Model3D/_list/convert/All처럼

내 코드 보인다 다시 Cradle 기능에 넣은 것처럼 보입니다). couch_url으로 표시되는 전체 경로는 다른 CouchDB 연결에서 작동하며, 말했듯이 Cradle보기 기능이 제대로 작동합니다.

{ stack: [Getter/Setter], 
    arguments: [ 'ILLEGAL' ], 
    type: 'unexpected_token', 
    message: [Getter/Setter] } 

답변

0

사용중인 목록 기능을 확인하십시오. 깨진 JSON을 생성 할 가능성이 큽니다. 제 경우에는 속성에 대해 '정의되지 않은'결과가 나타납니다. 정의되지 않은 항목은 삭제해야하며 모든 속성 이름은 따옴표로 묶어야합니다.

+0

결코 늦지 않는 것이 좋습니다. – KTys

0

내가이 재현하려했지만 나를 위해 작동하는 것 같다 :

내가 오류 개체입니다. 그냥 두 번 확인 "변환"귀하의 목록 기능과 "모두"귀하의보기 이름입니까?

내가보고있는 유일한주의 사항은 데이터베이스 이름에 대문자가 들어 있다는 것입니다. CouchDB 데이터베이스는 모두 소문자 여야합니다.

+0

Jan - 성공적으로 사용한 couchdb 및 cradle 버전을 알려주시겠습니까? 대문자 사용에 대한 몇 가지 규칙이있을 수 있습니다. 그러나 다른 모든 couchdb 관련 호출은 해당 데이터베이스 이름으로 올바르게 작동하므로 _list 함수를 망칠 것이라고 믿기가 어렵습니다 ... – KTys

+0

또한 이름은 적절한 couchdb 순서로되어 있습니다. 다른 비 요람 라우트 (perl, curl) 중 하나를 사용하면 작동합니다. – KTys

+0

최근의 것 : –