进行更改后更新:
/app/index.js:27
2016-12-07T16:03:32.984832+00:00 app[web.1]: liveQuery: {
2016-12-07T16:03:32.984833+00:00 app[web.1]: ^^^^^^^^^
2016-12-07T16:03:32.984838+00:00 app[web.1]: SyntaxError: Unexpected identifier
2016-12-07T16:03:32.984839+00:00 app[web.1]: at Object.exports.runInThisContext (vm.js:76:16)
2016-12-07T16:03:32.984839+00:00 app[web.1]: at Module._compile (module.js:542:28)
2016-12-07T16:03:32.984840+00:00 app[web.1]: at Object.Module._extensions..js (module.js:579:10)
2016-12-07T16:03:32.984840+00:00 app[web.1]: at Module.load (module.js:487:32)
2016-12-07T16:03:32.984840+00:00 app[web.1]: at tryModuleLoad (module.js:446:12)
2016-12-07T16:03:32.984841+00:00 app[web.1]: at Function.Module._load (module.js:438:3)
2016-12-07T16:03:32.984842+00:00 app[web.1]: at Module.runMain (module.js:604:10)
2016-12-07T16:03:32.984842+00:00 app[web.1]: at run (bootstrap_node.js:394:7)
2016-12-07T16:03:32.984842+00:00 app[web.1]: at startup (bootstrap_node.js:149:9)
2016-12-07T16:03:32.984843+00:00 app[web.1]: at bootstrap_node.js:509:3
2016-12-07T16:03:32.991077+00:00 app[web.1]:
2016-12-07T16:03:32.998460+00:00 app[web.1]: npm ERR! Linux 3.13.0-105-generic
2016-12-07T16:03:32.998644+00:00 app[web.1]: npm ERR! argv "/app/.heroku/node/bin/node" "/app/.heroku/node/bin/npm" "start"
2016-12-07T16:03:32.998784+00:00 app[web.1]: npm ERR! node v6.9.1
2016-12-07T16:03:32.998903+00:00 app[web.1]: npm ERR! npm v3.10.8
2016-12-07T16:03:32.999025+00:00 app[web.1]: npm ERR! code ELIFECYCLE
2016-12-07T16:03:32.999126+00:00 app[web.1]: npm ERR! parse-server-example@1.4.0 start: `node index.js`
2016-12-07T16:03:32.999210+00:00 app[web.1]: npm ERR! Exit status 1
2016-12-07T16:03:32.999307+00:00 app[web.1]: npm ERR!
2016-12-07T16:03:32.999390+00:00 app[web.1]: npm ERR! Failed at the parse-server-example@1.4.0 start script 'node index.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 path = require('path');
var databaseUri = process.env.DATABASE_URI || process.env.MONGODB_URI;
var S3Adapter = require('parse-server').S3Adapter;
if (!databaseUri) {
console.log('DATABASE_URI not specified, falling back to localhost.');
}
var api = new ParseServer({
databaseURI: databaseUri || 'mongodb://ADDRESS',
cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
appId: process.env.APP_ID || 'APPID',
masterKey: process.env.MASTER_KEY || 'MASTERKEY',
serverURL: process.env.SERVER_URL || 'http://localhost:1337/parse', // Don't forget to change to https if needed
fileKey: 'FILEKEY',
filesAdapter: new S3Adapter(
process.env.AWS_ACCESS_KEY_ID || "AKIAIEHF3KZUEYJTUOJA",
process.env.AWS_SECRET_ACCESS_KEY || "AWS_SECRET_ACCESS_KEY",
process.env.BUCKET_NAME || "BUCKET_NAME"
)
liveQuery: {
classNames: ["Users", "FritchDirectory"] // List of classes to support for query subscriptions
}
});
// 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 static assets from the /public folder
app.use('/public', express.static(path.join(__dirname, '/public')));
// 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 website. Please star the parse-server repo on GitHub!');
});
// There will be a test page available on the /test path of your server url
// Remove this before launching your app
app.get('/test', function(req, res) {
res.sendFile(path.join(__dirname, '/public/test.html'));
});
var port = process.env.PORT || 1337;
var httpServer = require('http').createServer(app);
httpServer.listen(port, function() {
console.log('parse-server-example running on port ' + port + '.');
});
// This will enable the Live Query real-time server
ParseServer.createLiveQueryServer(httpServer);
//curl -X POST -H "X-Parse-Application-Id:1bIi1xMZLEnYu1axn0SlDXu9xm7wSet25Y0hyvys" -H "Content-Type: application/json" -d '{"HerCell":1337,"title":"Sean Plott","address":321}' http://localhost:1337/parse/classes/FritchDirectory
//export DATABASE_URI=mongodb://address
我为运行Parse服务器的Heroku App获得的输出是: 请告诉我这一定有什么问题?我已经遵循了从解析到heroku的所有指南,但只是不明白她的情况。
2016-12-06T16:52:43.317740+00:00 heroku[web.1]: State changed from crashed to starting
2016-12-06T16:52:46.453553+00:00 heroku[web.1]: Starting process with command `npm start`
2016-12-06T16:52:50.162903+00:00 app[web.1]:
2016-12-06T16:52:50.162917+00:00 app[web.1]: > parse-server-example@1.4.0 start /app
2016-12-06T16:52:50.162918+00:00 app[web.1]: > node index.js
2016-12-06T16:52:50.162919+00:00 app[web.1]:
2016-12-06T16:52:50.317661+00:00 app[web.1]: /app/index.js:23
2016-12-06T16:52:50.317664+00:00 app[web.1]: filesAdapter: new S3Adapter(
2016-12-06T16:52:50.317665+00:00 app[web.1]: ^^^^^^^^^^^^
2016-12-06T16:52:50.317666+00:00 app[web.1]: SyntaxError: Unexpected identifier
2016-12-06T16:52:50.317667+00:00 app[web.1]: at Object.exports.runInThisContext (vm.js:76:16)
2016-12-06T16:52:50.317667+00:00 app[web.1]: at Module._compile (module.js:542:28)
2016-12-06T16:52:50.317668+00:00 app[web.1]: at Object.Module._extensions..js (module.js:579:10)
2016-12-06T16:52:50.317668+00:00 app[web.1]: at Module.load (module.js:487:32)
2016-12-06T16:52:50.317669+00:00 app[web.1]: at tryModuleLoad (module.js:446:12)
2016-12-06T16:52:50.317669+00:00 app[web.1]: at Function.Module._load (module.js:438:3)
2016-12-06T16:52:50.317670+00:00 app[web.1]: at Module.runMain (module.js:604:10)
2016-12-06T16:52:50.317671+00:00 app[web.1]: at run (bootstrap_node.js:394:7)
2016-12-06T16:52:50.317672+00:00 app[web.1]: at startup (bootstrap_node.js:149:9)
2016-12-06T16:52:50.317672+00:00 app[web.1]: at bootstrap_node.js:509:3
2016-12-06T16:52:50.350495+00:00 app[web.1]:
2016-12-06T16:52:50.364668+00:00 app[web.1]: npm ERR! Linux 3.13.0-100-generic
2016-12-06T16:52:50.364914+00:00 app[web.1]: npm ERR! argv "/app/.heroku/node/bin/node" "/app/.heroku/node/bin/npm" "start"
2016-12-06T16:52:50.365113+00:00 app[web.1]: npm ERR! node v6.9.1
2016-12-06T16:52:50.365226+00:00 app[web.1]: npm ERR! npm v3.10.8
2016-12-06T16:52:50.365352+00:00 app[web.1]: npm ERR! code ELIFECYCLE
2016-12-06T16:52:50.365448+00:00 app[web.1]: npm ERR! parse-server-example@1.4.0 start: `node index.js`
2016-12-06T16:52:50.365582+00:00 app[web.1]: npm ERR! Exit status 1
2016-12-06T16:52:50.367495+00:00 app[web.1]: npm ERR!
2016-12-06T16:52:50.367496+00:00 app[web.1]: npm ERR! Failed at the parse-server-example@1.4.0 start script 'node index.js'.
2016-12-06T16:52:50.367497+00:00 app[web.1]: npm ERR! Make sure you have the latest version of node.js and npm installed.
2016-12-06T16:52:50.367498+00:00 app[web.1]: npm ERR! If you do, this is most likely a problem with the parse-server-example package,
2016-12-06T16:52:50.367498+00:00 app[web.1]: npm ERR! not with npm itself.
2016-12-06T16:52:50.367499+00:00 app[web.1]: npm ERR! Tell the author that this fails on your system:
2016-12-06T16:52:50.367499+00:00 app[web.1]: npm ERR! node index.js
2016-12-06T16:52:50.367500+00:00 app[web.1]: npm ERR! You can get information on how to open an issue for this project with:
2016-12-06T16:52:50.367501+00:00 app[web.1]: npm ERR! npm bugs parse-server-example
2016-12-06T16:52:50.367501+00:00 app[web.1]: npm ERR! Or if that isn't available, you can get their info via:
2016-12-06T16:52:50.367502+00:00 app[web.1]: npm ERR! npm owner ls parse-server-example
2016-12-06T16:52:50.367503+00:00 app[web.1]: npm ERR! There is likely additional logging output above.
2016-12-06T16:52:50.372745+00:00 app[web.1]:
2016-12-06T16:52:50.373075+00:00 app[web.1]: npm ERR! Please include the following file with any support request:
2016-12-06T16:52:50.373250+00:00 app[web.1]: npm ERR! /app/npm-debug.log
2016-12-06T16:52:50.467906+00:00 heroku[web.1]: State changed from starting to crashed
2016-12-06T16:52:50.458594+00:00 heroku[web.1]: Process exited with status 1
2016-12-06T16:52:50.367499+00:00 app[web.1]: npm ERR! node index.js
2016-12-06T16:52:50.367500+00:00 app[web.1]: npm ERR! You can get information on how to open an issue for this project with:
2016-12-06T16:52:50.367501+00:00 app[web.1]: npm ERR! npm bugs parse-server-example
2016-12-06T16:52:50.367501+00:00 app[web.1]: npm ERR! Or if that isn't available, you can get their info via:
2016-12-06T16:52:50.367502+00:00 app[web.1]: npm ERR! npm owner ls parse-server-example
2016-12-06T16:52:50.367503+00:00 app[web.1]: npm ERR! There is likely additional logging output above.
2016-12-06T16:52:50.372745+00:00 app[web.1]:
2016-12-06T16:52:50.373075+00:00 app[web.1]: npm ERR! Please include the following file with any support request:
2016-12-06T16:52:50.373250+00:00 app[web.1]: npm ERR! /app/npm-debug.log
2016-12-06T16:52:50.467906+00:00 heroku[web.1]: State changed from starting to crashed
2016-12-06T16:52:50.458594+00:00 heroku[web.1]: Process exited with status 1
答案 0 :(得分:1)
您的错误在这里(请查看下面的箭头):
var api = new ParseServer({
databaseURI: databaseUri || 'mongodb://localhost:27017/dev',
cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
appId: process.env.APP_ID || 'myAppId',
masterKey: process.env.MASTER_KEY || '', //Add your master key here. Keep it secret!
fileKey: process.env.FILE_KEY || 'optionalFileKey', // For migrated apps, this is necessary to provide access to files already hosted on parse.com.
serverURL: process.env.SERVER_URL || 'http://localhost:1337', // Don't forget to change to https if needed
filesAdapter: new S3Adapter(
process.env.AWS_ACCESS_KEY_ID || "AWS_ACCESS_KEY_ID",
process.env.AWS_SECRET_ACCESS_KEY || "AWS_SECRET_ACCESS_KEY",
process.env.BUCKET_NAME || "BUCKET_NAME"
)
}); // <----------------
liveQuery: {
classNames: ["Users", "FritchDirectory"] // List of classes to support for query subscriptions
}
箭头所在的位置,关闭api
初始化
liveQuery: {
classNames: ["Users", "FritchDirectory"] // List of classes to support for query subscriptions
}
无效的Javascript语法。
堆栈跟踪将其显示为filesAdapter: new S3Adapter
,因为这是它识别的最后一件事
我不知道你的意图,但看起来需要这样:
var liveQuery = {
classNames: ["Users", "FritchDirectory"] // List of classes to support for query subscriptions
}
注意等号而不是冒号。前者用于对象的属性赋值
我刚看了example。 您希望在livequery属性之后向下移动结束括号,如下所示:
filesAdapter: new S3Adapter(
process.env.AWS_ACCESS_KEY_ID || "AWS_ACCESS_KEY_ID",
process.env.AWS_SECRET_ACCESS_KEY || "AWS_SECRET_ACCESS_KEY",
process.env.BUCKET_NAME || "BUCKET_NAME"
),
liveQuery: {
classNames: ["Users", "FritchDirectory"] // List of classes to support for query subscriptions
}
}); // <----------------