twilio收到短信时,我的代码返回http 415响应

问题描述

当有人向我的Twilio电话号码发送短信时,我已经在Twilio中配置了一个Webhook指向下面的控制器。但是,发送短信时,Twilio会弹出11200错误,而ngrok告诉我我正在返回HTTP 415错误。有什么想法我做错了吗?这是控制器:

    [HttpPost]
    public IActionResult Index(SmsRequest incomingMessage)
    {
        var messagingResponse = new MessagingResponse();
        messagingResponse.Message(_incomingSMSService.parseIncomingMessage(incomingMessage.From,incomingMessage.Body));

        return TwiML(messagingResponse);
    }

解决方法

SmsRequest来自表单数据,因此控制器应在其中包含[FormData] SmsRequest来电消息,如下所示:

    [HttpPost]
    public IActionResult Index([FormData]SmsRequest incomingMessage)
    {
        var messagingResponse = new MessagingResponse();
        messagingResponse.Message(_incomingSMSService.parseIncomingMessage(incomingMessage.From,incomingMessage.Body));

        return TwiML(messagingResponse);
    }