Я использую PandaStream, который отправляет уведомление REST как YAML в наше приложение ASP.NET. Веб-сервис, который у меня есть, задыхается и возвращает 500, потому что он пытается проанализировать контент как XML. Как я могу остановить этот анализ? Как получить содержимое в виде большой строки, чтобы я мог разобрать его сам?
[WebMethod]
//HOWTO? suppress XML parsing
public void UpdateStatus()
{
// HOWTO? get content as string
// parse string as YAML
// ...
}
ОБНОВЛЕНИЕ: ОК, если я использую обычную страницу .aspx, как мне получить необработанное содержимое POST в виде строки?
ОБНОВЛЕНИЕ 2: я могу получить текст:
Stream s = Request.InputStream;
byte[] buffer = new byte[s.Length];
s.Read(buffer, 0, (int)s.Length);
String content = bytesToString(buffer);
... но он облажался. Линии открытия yaml:
---
:video:
:thumbnail: bac01bf0-503a-012b-1406-123138002145.flv_thumb.jpg
:duration: 15900
... и так далее, но в моей строке это становится:
video=---%20%0a%3avideo%3a%20%0a%20%20%3athumbnail%3a%20bac01bf0-503a-012b-1406-123138002145.flv_thumb.jpg%0a%20%20%3aduration%3a%2015900
Кажется, ASP "параметризует" тело POST, когда я просто хочу сырье. Это как-то связано с типом пантомимы?