2016-06-24 2 views
2

Я пытаюсь заполнить примерное приложение SMS с Twilio, где я отправляю SMS-сообщение на мой номер Twilio, и служба Twilio отправляет мне ответ. Я знаю, что сервис Twilio достигает моего API, потому что я вижу входящий запрос от Twilio, который достигает моего API, и я вижу ответ моего API, но я думаю, что что-то не так, потому что я никогда не получаю ответ от СМС.Реакция Twilio XML на SMS

[HttpPost] 
[Route("EchoTest")] 
public IHttpActionResult EchoTest() 
{ 
    string response = "<Response><Sms>Thanks for the message</Sms></Response>"; 
    return ResponseMessage(Request.CreateResponse(HttpStatusCode.OK, response, new XmlMediaTypeFormatter())); 
} 

Я возвращая ResponseMessage так что я могу быть последовательным в возвращающий IHttpActionResult. Я также попытался вернуть только HttpResponseMessage, как показано ниже, с теми же результатами.

[HttpPost] 
[Route("EchoTest")] 
public HttpResponseMessage EchoTest() 
{ 
    string response = "<Response><Sms>Thanks for the message</Sms></Response>"; 
    Request.CreateResponse(HttpStatusCode.OK, response, new XmlMediaTypeFormatter()); 
} 

Это то, что мой API посылает обратно ...

<string 
xmlns="http://schemas.microsoft.com/2003/10/Serialization/">&lt;Response&gt;&lt;Sms&gt;Thanks for the message&lt;/Sms&gt;&lt;/Response&gt; 
</string> 

Могу ли я Мессинг ответ XML? То, что я ищу, чтобы отправить обратно в Twilio это ...

<Response><Sms>Thanks for the message</Sms></Response> 

ответ

3

См веб-страницы: https://msdn.microsoft.com/en-us/library/hh969056(v=vs.118).aspx Попробуйте

XElement response = XElement.Parse("<Response><Sms>Thanks for the message</Sms></Response>"); 
    Request.CreateResponse<XElement>(request, HttpStatusCode.OK, response); 
+0

Спасибо! Код XElement работал. Хотя мне пришлось отправить его обратно с помощью 'return Request.CreateResponse (HttpStatusCode.OK, response, new XmlMediaTypeFormatter());' – webworm

Смежные вопросы