我成功将我的应用程序从Parse迁移到了Heroku,现在我的AppDelegate使用了这段代码:
[Parse initializeWithConfiguration:[ParseClientConfiguration configurationWithBlock:^(id<ParseMutableClientConfiguration> configuration) {
configuration.applicationId = @"xxxxxxxx";
configuration.clientKey = @"xxxxxxxx";
configuration.server = @"http://xxxxxxxx.herokuapp.com/parse";
}]];
而不是
// [Parse setApplicationId:@"xxxxxxxx"
// clientKey:@"xxxxxxxx"];
// [PFUser enableRevocableSessionInBackground];
除云代码外,一切正常,当我运行云代码时,这是模拟器的错误:[Error]: Invalid function. (Code: 141, Version: 1.12.0)
这是我的云文件路径:/Users/Viny/heroku/parse-server-example/cloud/main.js
我更新并使用Parse中的相同main.js推送它。
这是我的index.js:
// Example express application adding the parse-server module to expose Parse
// compatible API routes.
var express = require('express');
var ParseServer = require('parse-server').ParseServer;
var databaseUri = process.env.DATABASE_URI || process.env.MONGOLAB_URI;
if (!databaseUri) {
console.log('DATABASE_URI not specified, falling back to localhost.');
}
var api = new ParseServer({
databaseURI: process.env.DATABASE_URI || 'mongodb://localhost:27017/dev',
cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
appId: 'xxxxxxx',
masterKey: 'xxxxxxx',
fileKey: 'xxxxxxx',
clientKey: 'xxxxxxx',
serverURL: 'http://localhost:1337/parse'
});
// Client-keys like the javascript key or the .NET key are not necessary with parse-server
// If you wish you require them, you can set them as options in the initialization above:
// javascriptKey, restAPIKey, dotNetKey, clientKey
var app = express();
// Serve the Parse API on the /parse URL prefix
var mountPath = process.env.PARSE_MOUNT || '/parse';
app.use(mountPath, api);
// Parse Server plays nicely with the rest of your web routes
app.get('/', function(req, res) {
res.status(200).send('I dream of being a web site.');
});
var port = process.env.PORT || 1337;
app.listen(port, function() {
console.log('parse-server-example running on port ' + port + '.');
});
云代码与Parse一样正常工作,但不适用于Heroku ......
答案 0 :(得分:2)
而不是这个 configuration.server = @&#34; http://xxxxxxxx.herokuapp.com/parse&#34 ;; 做这个 configuration.server = @&#34; http://xxxxxxxx.herokuapp.com/parse/&#34 ;;
答案 1 :(得分:0)
好吧,我想我已经找到了问题,我在Heroku上为我的iOS应用程序提供了两个“个人应用程序”:“chilln”(我的iOS应用程序名称)和“rocky-reef-28464”(由关注此tuto:https://learnappmaking.com/how-to-migrate-parse-app-parse-server-heroku-mongolab/)
我将配置服务器更改为:http://rocky-reef-28464.herokuapp.com/parse/
现在它似乎识别出云代码,只是模拟器上的这个错误:[Error]: <null> (Code: 141, Version: 1.12.0)
我应该只有一个个人应用吗?
chilln有附加组件MongoLab和cfg var:“app_id”,“master_key”,“mongolab_url”,“parse_mount”。 rocky-reef-28464没有附加组件MongoLab但只有一个cfg var:“DATABASE_URI”,并且有git heroku repo(我认为)
我要做什么?将两个应用程序合并为一个?