【发布时间】:2016-04-07 06:23:04
【问题描述】:
目前我正在尝试让 Twilio 使用 Parse Server 唤醒。以前我让它与托管的 Parse 一起运行得很好。但是,自从迁移到 Parse 服务器后,我遇到了一些问题。
我现在的问题是,当我调用 Cloud Code 时出现错误:"code":1,"message":"Internal server error."。在 heroku 日志中,我看到:
Uncaught internal server error. Cannot read property 'set' of null.
到目前为止,我已将其范围缩小到位于 main.js 的某个位置,我正在尝试从那里发送短信。我没有太多 JavaScript 练习,因此非常感谢任何帮助。
另外,我不确定在需要 twilio 时应该使用双引号还是单引号,就像在 main.js 的第一行中一样。
main.js:
var twilio = require("twilio")
var twilioAccountSid = 'XXXXXXXXXXXXXXXXXXXXXXXXXX';
var twilioAuthToken = 'XXXXXXXXXXXXXXXXXXXXXXXXXX';
var twilioPhoneNumber = '+1XXX-XXX-XXXX';
var secretPasswordToken = 'XXXX';
var twilio = require("twilio")(twilioAccountSid, twilioAuthToken);
Parse.Cloud.define("sendVerificationCode", function(request, response) {
var min = 1000; var max = 9999;
var verificationCode = Math.floor(Math.random() * (max - min + 1)) + min;
var user = Parse.User.current();
user.set("phoneVerificationCode", verificationCode);
user.save();
twilio.sendMessage({
From: twilioPhoneNumber,
To: request.params.phoneNumber,
Body: "Your verification code is " + verificationCode + "."
}, function(err, responseData) {
if (err) {
response.error(err);
} else {
response.success("Success");
}
});
});
Parse.Cloud.define("verifyPhoneNumber", function(request, response) {
var user = Parse.User.current();
var verificationCode = user.get("phoneVerificationCode");
if (verificationCode == request.params.verifyPhoneNumber) {
user.set("phoneNumber", request.params.phoneNumber);
user.save();
response.success("Success");
} else {
response.error("Invalid verification code.");
}
});
【问题讨论】:
标签: ios heroku twilio parse-cloud-code parse-server