0

我在 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');
        }
    });
}

可能是什么原因?

4

2 回答 2

3

Plivo 销售工程师在这里。

帕万是对的。您需要为 Parse指定Content-Type标头以生成正文的 JSON 字符串:application/json

        headers: {
            "Content-Type": "application/json"
        },

您还应该console.log(httpResponse)(又名 Plivo API 响应)会告诉您是否做错了(发送错误的数据,未正确验证)或者您是否做对了。无论哪种方式,它都会向您显示api_id可用于查看您的Plivo 帐户仪表板调试日志并找出需要更改的内容。api_id您还可以通过创建这样的 url直接转到特定的调试日志:https://manage.plivo.com/logs/debug/api/e58b26e5-3db5-11e6-a069-22000afa135b/并替换e58b26e5-3db5-11e6-a069-22000afa135bapi_id您返回的Parse.Cloud.httpRequest

于 2016-06-30T04:20:13.077 回答
1

可能是您忘记指定内容类型的标题。

“内容类型”:“应用程序/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');
        }
    });
} 
于 2016-06-29T15:45:52.277 回答