在我的Android应用程序中使用parse-server和heroku。我想创建后台作业,就像Parse.com之前提供的那些,但似乎无法使其工作。在parser-server-example文件夹中,我添加了一个包含以下内容的jobs.js文件:
var Parse = require('parse/node');
Parse.initialize('my_app_id');
Parse.serverURL = 'https://random-name.herokuapp.com/parse';
function saveSomething(){
var obj = new Parse.Object('my_class', 'random');
obj.save(null, {
success: function(place){
console.log("Success!!");
},
error: function(place, error){
console.log("Fail: " + error.message);
}
});
}
function sayHello() {
console.log('Hello');
}
sayHello();
saveSomething();sayHello()运行得很好,但是当我运行heroku run node jobs.js时,saveSomething()得到了“错误:未授权”的消息。所以我有两个问题。
1.使用parse-server & heroku创建后台作业的det方法正确吗?
2. "jobs.js“代码有什么问题/通常应该以不同的方式来完成后台任务吗?
(尝试将javascript-key添加到Parse.initialize('app-id','javascript-key');但没有成功)
发布于 2016-02-21 18:00:35
解决方案是在“Parse.Cloud.useMasterKey= 'https://random-name.herokuapp.com/parse‘”一行后面添加"Parse.serverURL ();“,并在"Parse.initialize('my_app_id','js- key ',' master -key');中添加应用程序的主密钥;以获得正确的授权。
var Parse = require('parse/node');
Parse.initialize('app-id', 'js-key','master-key');
Parse.serverURL = 'https://random-name.herokuapp.com/parse/';
Parse.Cloud.useMasterKey();
function saveSomething(){
var MyClass = Parse.Object.extend("MyClass");
var myclass = new MyClass();
myclass.set("columnName", "value");
myclass.save({
success: function(place){
console.log("Success!!");
},
error: function(place, error){
console.log("Fail: " + error.message);
}
});
}
saveSomething();希望这对某些人有帮助。
https://stackoverflow.com/questions/35523542
复制相似问题