我正在尝试将我的解析应用程序迁移到数字海洋,并遵循以下指南:
https://www.digitalocean.com/community/tutorials/how-to-migrate-a-parse-app-to-parse-server-on-ubuntu-14-04一切都很好,直到我到达测试分析服务器(执行示例云代码)部分
我测试了本教程中提供的示例云代码的云代码:
Parse.Cloud.define('hello', function(req, res) {
res.success('Hi');
});所以我在浏览器里和邮递员里都找到了一个嗨。见此处图片:https://cloudup.com/cH2dbBx1KTo
然后测试使用sendgrid的服务发送电子邮件(http://blog.parse.com/announcements/introducing-the-sendgrid-cloud-module/)的函数,我的云代码文件如下所示:
见图:https://cloudup.com/cD6MNRP3Tft
现在,我试图从邮递员那里运行我的帖子请求,甚至在我的hello函数上也会出现一个错误。
见图:5
所以我环顾四周,发现我的sendgrid导入有问题
var sendgrid =需要量(“sendgrid”);sendgrid.initialize(“xxxxxx”、“xxxxx.”);
在这些线上。
有没有人有过数字海洋云代码和发送网格电子邮件服务的经验,请帮助我,我会很感激,因为这是最后一步,我将完成我的迁移:)
干杯,坦泽尔
发布于 2016-05-10 22:10:45
您必须在解析配置文件中指定服务器URL。它是必需的,也可能是您不能运行云代码的原因。
"PARSE_SERVER_URL": "http://localhost:1337/parse"网址与您所使用的相同。在本教程中,Nginx也有错误,我在这里解释了https://serverfault.com/questions/765627/cannot-post-get-over-ssl/766428#766428
发布于 2016-05-12 13:39:31
所以我抬头看了看pm2,要查看实时日志,命令是
pm2 logs
一开始,当我运行命令时,我看到了一些错误,可能是以前的错误:

然后,我尝试使用postman应用程序的hello云功能来测试它在pm2日志中的输出,得到如下结果:

接下来,我尝试运行我的sendMail sendgrid函数,并发现我在sendgrid函数中使用的api-key抛出了一个错误ReferenceError: XXXXXXXXXXXX is not defined。

因此,我回到我的云代码,并使用引号围绕我的api-键参数,并将它作为字符串传递给我的发送网格初始化函数。然后我再试一次
[Error: The provided authorization grant is invalid, expired, or revoked]

因此,我回到我的sendgrid帐户,并确保我使用的api密钥是正确的,它似乎是好的。我再次测试并得到了同样的错误,所以我决定生成一个新的api密钥,以防万一。
因此,我意识到我不是使用API键,而是使用API键ID:

当我们在sendgrid上创建一个新的api密钥时,他们只给我们一次实际的api密钥,并要求我们将它存储在某个安全的地方:
We can only display the key above one time. Please store it somewhere safe because as soon as you navigate away from this page, we will not be able to retrieve or restore this generated token.

所以,在我使用了一个实际的api-key之后,我就可以发送电子邮件了。
但是,有一个小问题仍然存在,我不确定是因为我用来运行云代码的邮递员,还是在解析服务器或nginx中仍然返回502坏网关作为响应的nginx?

但是当我查看我的解析服务器的日志时,我确实看到了
parse-wrapper-0 { message: 'success' }

但是,在我的邮递员中,它再也回不来了,相反,我得到了502个错误,不知道为什么,但电子邮件是成功地发送的:)
https://stackoverflow.com/questions/37147734
复制相似问题