我使用此代码启动解析服务器 5。我更改了服务器硬件并在新服务器硬件上安装了新的解析服务器。我安装了最新的解析服务器 6,但此代码不再工作。我应该对此代码进行哪些更改才能再次工作?
var express = require('express');
var ParseServer = require('parse-server').ParseServer;
var app = express();
var mountPath = '/...';
var api = new ParseServer({
databaseURI: 'mongodb://...',
appId : '...',
masterKey : '...',
serverURL : 'http://127.0.0.1:...',
publicServerURL: '...',
cloud: '...',
allowClientClassCreation: false
});
app.use(mountPath, api);
var port = ...;
var httpServer = require('http').createServer(app);
httpServer.listen(port, function() {
console.log('parse-server running on port ' + port + '.');
});
我收到的错误消息:
TypeError: Router.use() requires a middleware function but got a Object
at Function.use (/home/ubuntu/parse/node_modules/express/lib/router/index.js:469:13)
at Function.<anonymous> (/home/ubuntu/parse/node_modules/express/lib/application.js:227:21)
at Array.forEach (<anonymous>)
at Function.use (/home/ubuntu/parse/node_modules/express/lib/application.js:224:7)
at Object.<anonymous> (/home/ubuntu/parse/armenianChurches.js:20:5)
at Module._compile (node:internal/modules/cjs/loader:1256:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
at Module.load (node:internal/modules/cjs/loader:1119:32)
at Module._load (node:internal/modules/cjs/loader:960:12)
at Object.<anonymous> (/home/ubuntu/parse/node_modules/pm2/lib/ProcessContainerFork.js:33:23)
将
app.use(mountPath, api);
替换为 app.use(mountPath, api.app);
参见https://github.com/parse-community/parse-server/blob/alpha/6.0.0.md