2015-11-05 42 views
2

我一直在使用JSON字符串來存儲我的數據,並且正在考慮轉移到Cloudant。我一直在尋找很長時間,很難爲這個教程或示例代碼,但似乎並不存在(有一個Node + Angular使用RESTAPI,但我是NodeJS的初學者,無法看到一種方式將其附加到AngularJS)如何通過純angularJS連接到Cloudant數據庫

我目前使用此代碼連接到我的local.json文件

var app = angular.module('myApp', []); 
app.controller('myCtrl', function($scope, $http) { 
    $http.get("data.json") 
    .success(function(response) {$scope.experience = response.experience;}); 
} 

有人可以幫助我連接到數據庫Cloudant?

回答

0

我終於明白了。不知道如何或爲什麼沒有在開始時需要什麼標題值的清晰文檔,想到我會分享我發現的內容:

您首先必須通過cloudant網站啓用CORS設置 - (Users> Cors >啓用cors),然後在您的http請求中將withCredentials設置爲true。

完整的代碼連接,請訪問: https://github.com/gweennnnn/cloudantangularconnect

1

根據您的問題,發現下面的鏈接:

https://cloudant.com/blog/chaise-blog-building-a-diary-with-angular-js-grunt-js-and-cloudant/#.VjuuD6QT2ko本文對如何連接通過到cloudant的示例代碼:

$http({ 
    url: [root, post._id].join('/') 
    , method: 'PUT' 
    , data: post 
    }) 
    .success(function(data, status){ 
    post._rev = data.rev; 
    $timeout(_autosave, 5000); 
    }) 

Accessing the DB in Cloudant with Angular是指可以應用到angularjs一個cloudant文章https://cloudant.com/for-developers/crud/#browser-update

+0

我已經試過了,但我仍然得到 無法加載資源:服務器與401狀態(未授權) –

+0

我會嘗試確認迴應通過curl或在瀏覽器中對雲數據庫進行身份驗證。以上文檔可能假定用戶已通過身份驗證。 –

+0

但是,這不是重點 - 讓任何人查看我的網站登錄到我的個人數據庫是沒有意義的。 –

1

有幾件事情,你可以嘗試:

  1. API密鑰 https://docs.cloudant.com/authorization.html

你在Cloudant API密鑰讀取後,嘗試用一個前面加上你的電話,像這樣:

https://<YOUR API KEY>:<YOUR API KEY PASSWORD>@<YOUR CLOUDANT USERNAME>.cloudant.com/<YOUR DATABASE NAME>

這將很明顯,不太好從長遠來看,B/C你會在你的客戶端代碼中擁有你的信譽,任何查看你的Javascript的人都能看到。

你可能會想挖回到節點,以避免這種情況。退房Cloudant的支持庫節點:https://github.com/cloudant/nodejs-cloudant

  • 在Cloudant啓用CORS https://docs.cloudant.com/cors.html
  • 這將使你的客戶端代碼運行,比如說,127.0.0.1 ,製作Cloudant請求。 (請確保everyone擁有_reader的權限。)

    還有很多其他的事情可以做,比如創建代理服務器,但這應該會讓您繼續。

    相關問題