如何在解析服务器中使用 node.js 查询对象

How to query object with node.js in parse server

我正在尝试使用节点从我的 Parse 服务器请求数据。 Parse 的文档对我来说根本没有意义。有人可以完成我的代码,以便我可以请求名为 "Items" 的 class 中的所有对象吗?

var express = require('express');
var ParseServer = require('parse-server').ParseServer;
var path = require('path');

var databaseUri = 'mongodb://xx';

if (!databaseUri) {
  console.log('DATABASE_URI not specified, falling back to localhost!');
}

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 || 'xx',
  masterKey: process.env.MASTER_KEY || 'xx', //Add your master key here. Keep it secret!
  serverURL: process.env.SERVER_URL || 'https://site.herokuapp.com/parse',  // Don't forget to change to https if needed
  liveQuery: {
    classNames: ["Posts", "Comments"] // 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('lol');
});

// 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);

这也是所有的documentation Parse provides but it doesn't work for me. I tried this,但仍然没有结果。有人可以编辑我的代码以便我可以使用云代码吗?最后,我想在我的浏览器中调用函数 "hello" 并查看 class "Items".

的所有对象

好的,所以我终于找到了答案。到目前为止,你们中的许多人都希望将 Parse 服务器迁移到 Heroku 之类的东西,因为它们将在将近一个月内关闭。对于那些将来面临同样挑战并已迁移到 Heroku 的人,请记住您的数据以 json 格式存储在 mlab 上。如果你想保存、查看或更新你的数据,并且你想使用节点通过 http 或 https 访问这些数据,你将不得不使用 mongodb 的 API(不是 PARSE SERVER API) 并将其包含在您的 packages.json 中。查看 mlab 的 documentation 而不是将您的 Parse Cloud Code 连接到 node.js。不幸的是,Parse 没有提供足够的文档来展示如何正确地将节点与 API 一起使用,因此请坚持使用 mlab 的 API。