SMS 未通过 PLIVO 从解析云代码发送
SMS is not being sent through PLIVO from parse cloud code
我在 parse.com
上开发了一个应用程序
我创建了以下函数来使用 plivo 发送短信。
function sendRSVPSMS(PlivoNumber, GuestNumber, Message) {
var payLoad = {
src: PlivoNumber,
dst: GuestNumber,
text: Message
};
Parse.Cloud.httpRequest({
url: "<My Plivo URL>",
method: "POST",
body: payLoad,
success: function (httpResponse) {
console.log('httpRequest success');
response.success("Sent successfully");
},
error: function (httpResponse) {
console.log('SendSMS: Request failed');
response.error('Request failed');
}
});
}
可能是什么原因?
可能是您忘记为内容类型指定 header。
"Content-Type": "application/json"
所以你的代码如下
function sendRSVPSMS(PlivoNumber, GuestNumber, Message) {
var payLoad = {
src: PlivoNumber,
dst: GuestNumber,
text: Message
};
Parse.Cloud.httpRequest({
url: "<My Plivo URL>",
method: "POST",
body: payLoad,
headers: {
"Content-Type": "application/json"
},
success: function (httpResponse) {
console.log('httpRequest success');
response.success("Sent successfully");
},
error: function (httpResponse) {
console.log('SendSMS: Request failed');
response.error('Request failed');
}
});
}
这里是 Plivo 销售工程师。
Pavan 是正确的。您需要将 Content-Type
header 指定为 application/json
以便 Parse 生成 body 的 JSON 字符串:
headers: {
"Content-Type": "application/json"
},
您还应该 console.log(httpResponse)
(又名 Plivo API 响应),它会告诉您是做错了什么(发送了错误的数据,没有正确验证)还是做对了。无论哪种方式,它都会向您显示一个 api_id
,您可以使用它来查看 Plivo account dashboard debug logs 并找出需要更改的内容。您还可以直接转到特定 api_id
的调试日志,方法是像这样创建 url:https://manage.plivo.com/logs/debug/api/e58b26e5-3db5-11e6-a069-22000afa135b/
并将 e58b26e5-3db5-11e6-a069-22000afa135b
替换为您返回的 api_id
Parse.Cloud.httpRequest
我在 parse.com
上开发了一个应用程序我创建了以下函数来使用 plivo 发送短信。
function sendRSVPSMS(PlivoNumber, GuestNumber, Message) {
var payLoad = {
src: PlivoNumber,
dst: GuestNumber,
text: Message
};
Parse.Cloud.httpRequest({
url: "<My Plivo URL>",
method: "POST",
body: payLoad,
success: function (httpResponse) {
console.log('httpRequest success');
response.success("Sent successfully");
},
error: function (httpResponse) {
console.log('SendSMS: Request failed');
response.error('Request failed');
}
});
}
可能是什么原因?
可能是您忘记为内容类型指定 header。
"Content-Type": "application/json"
所以你的代码如下
function sendRSVPSMS(PlivoNumber, GuestNumber, Message) {
var payLoad = {
src: PlivoNumber,
dst: GuestNumber,
text: Message
};
Parse.Cloud.httpRequest({
url: "<My Plivo URL>",
method: "POST",
body: payLoad,
headers: {
"Content-Type": "application/json"
},
success: function (httpResponse) {
console.log('httpRequest success');
response.success("Sent successfully");
},
error: function (httpResponse) {
console.log('SendSMS: Request failed');
response.error('Request failed');
}
});
}
这里是 Plivo 销售工程师。
Pavan 是正确的。您需要将 Content-Type
header 指定为 application/json
以便 Parse 生成 body 的 JSON 字符串:
headers: {
"Content-Type": "application/json"
},
您还应该 console.log(httpResponse)
(又名 Plivo API 响应),它会告诉您是做错了什么(发送了错误的数据,没有正确验证)还是做对了。无论哪种方式,它都会向您显示一个 api_id
,您可以使用它来查看 Plivo account dashboard debug logs 并找出需要更改的内容。您还可以直接转到特定 api_id
的调试日志,方法是像这样创建 url:https://manage.plivo.com/logs/debug/api/e58b26e5-3db5-11e6-a069-22000afa135b/
并将 e58b26e5-3db5-11e6-a069-22000afa135b
替换为您返回的 api_id
Parse.Cloud.httpRequest