如何使用TwiML在C#中读取Twilio POST参数?

时间:2013-08-02 03:42:03

标签: http-post twilio asp.net-web-api

如何读取来电的Twilio POST参数?我正在尝试使用TwilioController,但我无法使用SmsRequest获取Body和SmsSid。当我使用WebApi时,有人可以用C#中的示例帮助我。 我尝试使用Fiddler传递POST参数,但值为Null。所以我不确定我是否正确阅读。

我甚至试过这样做:

    [HttpPost]
    public string Post([FromBody] string smsReq)
    {
        return smsReq;
       // return smsReq.Body + " " + smsReq.SmsSid;
    }

但是当我从Fiddler传递值时,我对smsReq变为null。

这是我从Fiddler传来的:      用户代理:Fiddler      内容类型:application / x-www-form-urlencoded      接受:application / xml      主持人:localhost:56846      内容长度:13

 { '': "Test"}

仅使用{=" Test"}尝试以上但没有值。 smsReq将为NULL。

1 个答案:

答案 0 :(得分:2)

Twilio传道者在这里。

您应该能够将SmsRequest对象用作Post方法中的参数:

public void Post([FromBody]SmsRequest) {}

我使用Fiddler对此进行测试,将此片段的Json传递为the Body of the POST request

{
 "Body":"asdasdasdas",
 "From":"sadasdasds"
}

您还必须确保将请求的Content-Type标头设置为“application / json”到WebAPI知道您传递JSON以便它可以反序列化它。

希望有所帮助。