如何使用解析服务器调用函数
Posted
技术标签:
【中文标题】如何使用解析服务器调用函数【英文标题】:How can I call a function using parse-server 【发布时间】:2019-09-17 02:13:38 【问题描述】:我正在开发一个 javascript 网络应用程序,并且我正在尝试制作一个“忘记密码”功能。我知道如何在服务器端使用 Parse 函数在云代码中创建一个函数。但我不能做的是从我的控制器(在前端)传递对象。顺便说一句,我正在使用 ember.js。
我尝试保存 ("user.save()") 对象(即使没有更改任何内容),然后调用 Parse.Cloud.AfterSave("user",(request)..),但我出现错误。如何将对象传递给 Cloud 代码?
【问题讨论】:
首先,重要的是要注意 Parse Server 具有内置的忘记密码功能 (docs.parseplatform.org/js/guide/#resetting-passwords)。无论如何,如果你想建立你的定制,你可以创建一个云代码函数,然后用Parse.Cloud.run('theNameOfTheFunction', user: yourUserVarGoesHere )
调用这个云代码函数。
谢谢,忘记密码功能我知道了……我在云端创建了这个功能后,如何在应用程序中访问它?
我发送给您的代码实际上是您将在应用程序中用于调用函数的代码。
好的,在“theNameOfTheFunction”中,我必须在 API 代码 Cloud/Main.js 中创建一个?对吗?
是的。我刚刚添加了一个答案,以便更清楚。
【参考方案1】:
在你的main.js
文件中,为了创建云代码函数:
Parse.Cloud.define('resetPassword', async req =>
console.log(`My user is: $req.object.getUsername()`);
...
);
在你的客户端代码中,为了调用云代码函数:
await Parse.Cloud.run('hello', user: Parse.User.current() );
【讨论】:
感谢您的帮助,我将测试此代码,并给您反馈。 我收到此错误 "ReferenceError: Parse is not defined" 当我保存一个新对象时,函数 Parse.Cloud.afterSave("MyClass" ...) 来操作参数...我尝试使用 var Parse = require('parse'),但它不起作用。 我解决了这个问题,但我还有另一个问题...我正在将电子邮件传递给 Cloud Code。这个函数如何“ParseUser.RequestPasswordResetAsync("email@example.com");"应该管用?我正在传递电子邮件,但它说我没有模板。我以为它会向默认的 Parse Page 发送一封电子邮件。 您能否打开一个新问题,分享您当前的代码、错误消息以及您用于初始化 Parse 的配置?以上是关于如何使用解析服务器调用函数的主要内容,如果未能解决你的问题,请参考以下文章