2012-10-11 4 views
0

Apache 웹 서버 또는 IIS (노드가 아니라)에서 html 및 js 파일을 제공하려면 Backbone.js를 CouchDB에 연결하는 방법을 이해하는 데 문제가 있습니다. .js 또는 couchApp).Apache 또는 IIS에서 호스팅 할 때 Backbone.js를 CouchDB에 연결

backbone.js CouchDB 확장을 사용하여 요청을 추상화해야합니까? 만약 그렇다면?

Backbone.js를 CouchDB RESTful 인터페이스에 직접 연결해야합니까? 또는 중간 PHP 레이어를 사용해야합니까 (PHP에 익숙하지만 Java 또는 다른 서버 측 설정이 아니기 때문에). 만약 그렇다면?

데이터베이스와 상호 작용하지 못하게하는 '동일한 출처 정책'을 다루는 가장 좋은 방법은 무엇입니까?

기본적으로 backbone.js를 사용하여 collections의 번호의 GET json 문서를 id, ID 배열 또는 모든 ID로 깔끔하게 만들고 싶습니다. 또한 두 번째 관리 웹 인터페이스에서 업데이트, 작성 및 삭제가 가능해야합니다.

답변

2

CouchDB를 사용하기 위해 확장 프로그램이 필요하다고 생각하지 않습니다.

당신이해야 할 주요한 일은 idAttribute에서 _id까지입니다.

또한 CouchDB와 클라이언트 사이에 중간 계층을 배치하는 것이 좋습니다. 유스 케이스가 매우 단순하지 않다면, 클라이언트로 보내기 전에 문서를 신속하게 변환해야 할 것입니다. PHP, Express로이 작업을 수행 할 수 있으며 CouchDB를 계속 사용하려면 CouchApp을 사용하십시오.

SOP를 깨끗이 우회하려면 CORS을 확인하십시오. 이제는 대부분의 브라우저에서 지원됩니다.

나는 PHP에 익숙하지 해요,하지만 여기에 내가 Expressfelix-couchdb 함께 할 방법은 다음과 같습니다 나는 https://cloudant.com/blog/backbone-and-cloudant/ 매우 행운이 있었다

var couchdb = require('felix-couchdb'), 
    client = couchdb.createClient(config.port, config.host), 
    myDb = client.db('my_db'); 

// (... express boilerplate) 
app.get('/resource/:resource_id', function (req, res) { 
    myDb.getDoc(req.params.resource_id, function (err, doc) { 
    if(err) 
     return res.send(err); 

    res.send(doc); 
    }); 
}); 
+0

당신이 필수적으로 필요한 모든 라이브러리를 추천 할 수 설치 및 구성? 특히 PHP뿐만 아니라 (노드/익스프레스)? – johowie

+0

여기에 충분한 공간이 없으므로 내 대답을 수정할 수 있습니다. –

관련 문제