2013-04-30 85 views
2

我試圖創建從我公司的Harvest賬戶統計顯示一個非常基本的有點骨氣的應用程序。他們有一個REST API,通過基本身份驗證或oAuth進行身份驗證。我似乎面臨着兩個問題在這裏:我如何驗證和使用與骨幹外部API?

  • 認證
  • 跨域請求

所以,我開始爲我收集設置的URL相應的網址:

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

而且我使用this basic auth plugin嘗試,但如果這部分工作,因爲我仍然獲得訪問控制允許來源的錯誤,我不能告訴。

什麼是去了解它的最好方法?

回答

2

This other StackOverflow question是相似的,有你應該看看更多細節。

但一般的想法是,如果你沒有訪問遠程服務器(我認爲你沒有收穫),那麼你需要從你自己的服務器執行跨站點請求,你控制,最有可能是你正在部署這個骨幹應用的人。這意味着寫一些服務器端代碼(PHP,節點等)來執行請求(完全從服務器端合法的),然後讓你的客戶(骨幹網應用程序)從這些腳本的請求。

下面是一個簡要/假性例如用PHP:

request.php

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

projects.js

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

有道理。我沒有寫任何服務器端的代碼,但但它可能會是節點。謝謝! – user1807510 2013-05-01 15:09:02