如何在解析服务器上配置 Twilio?
How to configure Twilio on parse server?
我正在尝试将 Twilio 合并到我的 运行 应用程序中,该应用程序位于我使用 Heroku 和 MongoLab 部署的解析服务器上。我正在尝试在我的 cloud/main.js 文件
中使用此代码进行配置
var twilio = require("twilio");
twilio.initialize("87se46bovanw4v5aiwy4o57","ia8o57awyov57yn875vyboe");
Parse.Cloud.define("inviteWithTwilio", function(request, response) {
// Use the Twilio Cloud Module to send an SMS
twilio.sendSMS({
From: "6543211234",
To: 8065456703,
Body: "Start using Parse and Twilio!"
}, {
success: function(httpResponse) { response.success("SMS sent!"); },
error: function(httpResponse) { response.error("Uh oh, something went wrong"); }
});
});
但是,我收到了这个回复
UserInfo={NSDebugDescription=JSON text did not start with array or object and option to allow fragments not set.} [NSDebugDescription: JSON text did not start with array or object and option to allow fragments not set.]
我确定问题出在尝试初始化 Twilio 时的前两行。我认为这是因为 Twilio Cloud Module
没有像使用 Parse Hosted 云代码那样集成到我的解析服务器中,但我不确定。我该如何解决这个问题?谢谢你的时间。
我认为这是 Twilio 版本的问题。
你应该使用 twilio.sendMessage.
var twilio = require("twilio");
twilio.initialize("87se46bovanw4v5aiwy4o57","ia8o57awyov57yn875vyboe");
Parse.Cloud.define("inviteWithTwilio", function(request, response) {
// Use the Twilio Cloud Module to send an SMS
twilio.sendMessage({
From: "6543211234",
To: 8065456703,
Body: "Start using Parse and Twilio!"
}, {
success: function(httpResponse) { response.success("SMS sent!"); },
error: function(httpResponse) { response.error("Uh oh, something went wrong"); }
});
});
希望能帮到你。
谢谢
///////////////////////////////////
我的代码运行良好。
Parse.Cloud.define("sendSMS", function(request, response) {
console.log(request);
var twilio = require("twilio")("ACCOUNT_SID","AUTH_TOKEN");
twilio.sendMessage({
to: request.params.number,
from: request.params.from,
body: request.params.message
}, function(err, responseData) {
if (err) {
response.error(err);
} else {
response.success("SMS sent.");
}
});
});
这里是 Twilio 开发人员布道者。
从我们在评论中的对话来看,您似乎还没有安装 Twilio npm module。在 Parse 上,您不必安装该模块,因为它是默认包含的。要通过 Parse 服务器使用 Twilio 模块,您需要安装它。
要安装该模块,请在终端中打开您的应用程序并键入:
$ npm install twilio --save
--save
标志很重要,因为它将依赖项保存到您的 package.json
文件中。签入更新后的 package.json
并再次部署您的代码。现在,当部署到 Heroku 时,将安装 npm 模块,包括 Twilio 模块。
马林也已经回答了,他的观点很好。我还建议使用 twilio.sendMessage
。它使用更新且功能更好的 Messages resource(而不是已弃用的 SMS 资源)。
如果这有帮助,请告诉我。
我正在尝试将 Twilio 合并到我的 运行 应用程序中,该应用程序位于我使用 Heroku 和 MongoLab 部署的解析服务器上。我正在尝试在我的 cloud/main.js 文件
中使用此代码进行配置var twilio = require("twilio");
twilio.initialize("87se46bovanw4v5aiwy4o57","ia8o57awyov57yn875vyboe");
Parse.Cloud.define("inviteWithTwilio", function(request, response) {
// Use the Twilio Cloud Module to send an SMS
twilio.sendSMS({
From: "6543211234",
To: 8065456703,
Body: "Start using Parse and Twilio!"
}, {
success: function(httpResponse) { response.success("SMS sent!"); },
error: function(httpResponse) { response.error("Uh oh, something went wrong"); }
});
});
但是,我收到了这个回复
UserInfo={NSDebugDescription=JSON text did not start with array or object and option to allow fragments not set.} [NSDebugDescription: JSON text did not start with array or object and option to allow fragments not set.]
我确定问题出在尝试初始化 Twilio 时的前两行。我认为这是因为 Twilio Cloud Module
没有像使用 Parse Hosted 云代码那样集成到我的解析服务器中,但我不确定。我该如何解决这个问题?谢谢你的时间。
我认为这是 Twilio 版本的问题。
你应该使用 twilio.sendMessage.
var twilio = require("twilio");
twilio.initialize("87se46bovanw4v5aiwy4o57","ia8o57awyov57yn875vyboe");
Parse.Cloud.define("inviteWithTwilio", function(request, response) {
// Use the Twilio Cloud Module to send an SMS
twilio.sendMessage({
From: "6543211234",
To: 8065456703,
Body: "Start using Parse and Twilio!"
}, {
success: function(httpResponse) { response.success("SMS sent!"); },
error: function(httpResponse) { response.error("Uh oh, something went wrong"); }
});
});
希望能帮到你。
谢谢
///////////////////////////////////
我的代码运行良好。
Parse.Cloud.define("sendSMS", function(request, response) {
console.log(request);
var twilio = require("twilio")("ACCOUNT_SID","AUTH_TOKEN");
twilio.sendMessage({
to: request.params.number,
from: request.params.from,
body: request.params.message
}, function(err, responseData) {
if (err) {
response.error(err);
} else {
response.success("SMS sent.");
}
});
});
这里是 Twilio 开发人员布道者。
从我们在评论中的对话来看,您似乎还没有安装 Twilio npm module。在 Parse 上,您不必安装该模块,因为它是默认包含的。要通过 Parse 服务器使用 Twilio 模块,您需要安装它。
要安装该模块,请在终端中打开您的应用程序并键入:
$ npm install twilio --save
--save
标志很重要,因为它将依赖项保存到您的 package.json
文件中。签入更新后的 package.json
并再次部署您的代码。现在,当部署到 Heroku 时,将安装 npm 模块,包括 Twilio 模块。
马林也已经回答了,他的观点很好。我还建议使用 twilio.sendMessage
。它使用更新且功能更好的 Messages resource(而不是已弃用的 SMS 资源)。
如果这有帮助,请告诉我。