8

我正在尝试了解新的 Parse Server 并已部署在 Heroku 上。这进展顺利,但我正在努力解决如何编写服务器端代码(云代码)。我已经多次阅读解析服务器示例,所以我一定遗漏了一些东西,但我很不清楚我是否应该使用 Express 来做某事,或者我什至如何开始包含我的云代码文件。很感谢任何形式的帮助。

更新:

我发现我刚才在错误的地方查找的云文件夹。我将它和 index.js 移动到桌面上的应用程序文件夹中。我已将 main.js 中的默认代码更改为我的自定义代码。我已经使用我的应用程序信息设置了 index.js。现在的问题是当我运行应用程序并尝试调用云代码函数时,我得到错误无效函数。

4

2 回答 2

8

如果你有在 heroku 上运行的解析服务器示例,那么你就完成了 90%。只需打开cloud/main.js文件并开始添加您的云代码。那里应该有一个 hello cloud 功能作为示例。

要使用您已经创建的云代码模块/文件,您可以像之前在 parse.com 上所做的那样要求它们。唯一的区别是路径现在应该是相对的而不是绝对的。例如require('cloud/cloudFunctions');,如果您在云目录中require('./cloudFunctions');调用了一个模块。cloudFunctions.js

Cloud Code 的工作方式与它的工作方式类似,parse.com对于简单的应用程序,您不必过多考虑 expressjs。也就是说,解析服务器正在使用 expressjs,所以是的,您正在使用它。

解析服务器只是一个类似于其他数千个可用的节点模块。如果您以前没有使用 nodejs 的经验,那么运行解析服务器可能看起来很复杂。因此,我建议在完全迁移之前阅读有关 nodejs 的基础知识。

于 2016-03-04T18:48:13.880 回答
1

我在 Google Compute Engine 实例上使用 Bitnami 堆栈,我遇到了与您类似的问题。要解决它,只需导航到 server.js 文件所在的文件夹并创建一个名为“cloud”的文件夹。然后在 cloud 文件夹中创建 main.js 文件,内容如下:

Parse.Cloud.define('hello', function(req, res) {
  res.success('Hi');
});

现在打开 server.js 文件并找到包含云代码文件路径的行。将其更改为指向您的 main.js 文件,如下所示:

server.js 配置文件

这可以是您选择的任意文件夹。现在只需重新启动解析服务器并调用云函数:

String result = ParseCloud.callFunction("hello", new HashMap<>());

这适用于 Java SDK,但应该没有太大不同。如果您使用了上面的函数,变量结果将等于“Hi”。

于 2016-08-03T11:25:03.207 回答