我在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');
}
});
}
可能是什么原因?
答案 0 :(得分:3)
Plivo销售工程师。
帕万是对的。您需要为Parse指定Content-Type
标题为application/json
以生成正文的JSON字符串:
headers: {
"Content-Type": "application/json"
},
您还应console.log(httpResponse)
(也称为Plivo API响应),它将告诉您是否做错了(发送错误数据,未正确验证)或者您做了正确的事情。无论哪种方式,它都会显示api_id
,您可以使用api_id
查看Plivo account dashboard debug logs并找出需要更改的内容。您还可以直接转到特定https://manage.plivo.com/logs/debug/api/e58b26e5-3db5-11e6-a069-22000afa135b/
的调试日志,方法是创建这样的网址:e58b26e5-3db5-11e6-a069-22000afa135b
并将api_id
替换为您Parse.Cloud.httpRequest
返回的content = sudo('git status | sed -n 2p | grep -w "Your branch is up-to-date"')
print (content)
}
答案 1 :(得分:1)
可能是您忘记指定内容类型的标题。
“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');
}
});
}