2013-04-30 3 views
2

내 회사의 Harvest 계정에서 통계를 표시하는 매우 기본적인 작은 백본 앱을 만들려고합니다. 그들은 Basic Auth 또는 oAuth를 통해 인증하는 REST API를 가지고 있습니다. 내가 여기에 두 가지 문제에 직면하게 될 것 같습니다 :백본으로 외부 API를 인증하고 소비하는 방법은 무엇입니까?

:

  • 인증
  • 크로스 기원은 그래서 각각의 URL로 내 컬렉션의 URL을 설정으로 시작했습니다

를 요청

var Projects = Backbone.Collection.extend({ 
    url: 'https://mycompany.harvestapp.com/projects', 
}); 

그리고 난 this basic auth plugin을 사용해 보았습니다.하지만 여전히 Access-Control-Allow-Origin 오류가 발생했기 때문에 그 부분이 작동하는지 알 수 없습니다.

이 문제를 해결하는 가장 좋은 방법은 무엇입니까?

답변

2

This other StackOverflow question과 유사하며 더 자세히 살펴 봐야합니다.

그러나 일반적인 생각은 원격 서버에 액세스 할 수 없다면 (사용자가 Harvest를 사용하지 않는 것으로 추정) 사용자가 제어하는 ​​자체 서버에서 사이트 간 요청을 수행해야합니다 이 백본 앱을 배포 할 가능성이 가장 높습니다. 이것은 서버 측 코드 (PHP, Node 등)를 작성하여 (서버 측에서 완벽하게 합법적 인) 요청을 수행 한 다음이 스크립트에서 클라이언트 (백본 앱) 요청을 받는다는 것을 의미합니다.

request.php

<?php 
    echo file_get_contents('https://mycompany.harvestapp.com/projects'); 
?> 

projects.js 말이

var Projects = Backbone.Collection.extend({ 
    url: 'request.php', 
}); 
+0

: 여기

PHP로 간단한/의사 예이다. 아직 서버 측 코드는 작성하지 않았지만 아마 노드 일 것입니다. 감사! – user1807510

관련 문제