我想在node.js環境中使用解析Javascript SDK,我完全不知道爲什麼我無法使它工作。我在Swift iOS應用程序中使用Parse,所以我熟悉Parse客戶端代碼。在節點js環境和serverUrl解析JavaScript SDK
這裏就是我想要做的事:
var Parse = require('parse/node');
function ParseModule() {
var self = this;
self.initialize = function() {
return new Promise(function(resolve, reject) {
Parse.initialize("myAppID", "myJavascriptKey", "myMasterKey");
Parse.serverUrl = "https://myserver.com/parse";
Parse.Cloud.useMasterKey();
var query = new Parse.Query("MyClassName");
query.find()
.then(
function(results) {
console.log("yay! it worked");
resolve();
}
).catch(
function(err) {
output.log("parse error: " + err);
reject(err);
}
);
});
}
return self;
}
module.exports = new ParseModule();
當我的模塊的初始化函數被調用,使「發現」號召,在節點調試後,它只是掛起節點。在節點中它只是退出應用程序,所以我沒有錯誤。這可能是因爲正在使用服務器的錯誤(硬編碼)URL。
順便說一句,我真的很想使用主鍵而不是Javascript鍵,但初始化方法需要Javascript鍵。
此外,當我通過解析SDK代碼一步,我得到這樣的說法:
var url = _CoreManager2['default'].get('SERVER_URL');
在RESTController.js
。如果來自'config'對象的服務器url,這在我看來是由parse-server使用的。因此,按照文檔指示設置serverUrl不起作用。
我沒有使用正確的Parse NPM模塊?我是node.js的新手。
我正在浪費我的整個個人項目開發日!
謝謝, 彼得...
更新:我已經添加下面的代碼行(幾乎可以肯定沒用)集Parse.serverUrl = ...之後。這似乎解決了這個問題。
Parse.CoreManager.set('SERVER_URL', "https://myserver.com/parse");
但是,這對我來說似乎是一種破綻。如果有人正在做類似我所做的事情會告訴我我做錯了什麼(即正確的做法),我將不勝感激。
Parse.Cloud.useMasterKey();不工作。您應該改爲query.find({useMasterKey:true})。 – ChunTingLin