ASP.NET에서 REST YAML 웹 서비스 사용
문제
저는 ASP.NET 앱에 REST 알림을 YAML로 보내는 PandaStream을 사용하고 있습니다.내가 가지고 있는 웹 서비스는 콘텐츠를 XML로 구문 분석하려고 시도하기 때문에 질식하고 500을 반환합니다.이 구문 분석을 어떻게 중지할 수 있나요?직접 구문 분석할 수 있도록 콘텐츠를 큰 문자열로 가져오려면 어떻게 해야 합니까?
[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 본문을 "매개변수화"하는 것 같습니다.이것이 MIME 유형과 관련이 있습니까?
해결책
ASMX 웹 서비스는 입력 시 SOAP만 처리할 수 있습니다.다른 형식을 읽어야 하는 경우 ASMX 웹 서비스를 사용하지 않아야 합니다.
일반 페이지나 HttpHandler를 사용하고 직접 구문 분석을 수행하세요.
제휴하지 않습니다 StackOverflow