OpenRasta 커뮤니티 문서 예제 에서처럼 제목이 단일 문자열 속성 인 Home 리소스가있는 매우 간단한 OpenRasta 앱이 있습니다.openrasta xml 요청이 json으로 반환되었습니다.
이 같은 자원에 대한 XML 및 JSON 데이터 계약을 모두 설정 한 :
jQuery를에서ResourceSpace.Has.ResourcesOfType<Home>()
.AtUri("/home")
.HandledBy<HomeHandler>()
.AsXmlDataContract()
.And.AsJsonDataContract();
, 나는 JSON 데이터가 잘 얻을 수 있어요. 그러나 jQuery XML Ajax 요청을하면 JSON 데이터가 다시 반환됩니다.
내 jQuery 코드는 다음과 같습니다, 형식 오류가 parsererror :
오류 :
가$.ajax(
{
url: "/home",
dataType: "xml",
success: function(result) {
$('#xmlSpan').append($(result).find('Title').text());
},
error: function(request, status, ex) {
$('#xmlSpan').append('error: ');
$('#xmlSpan').append(status + ', ');
$('#xmlSpan').append(ex.toString());
}
});
추가되고 오류 정보는 다음과 같이보고 끝나는은
널 그러나 여기입니다 흥미로운 부분.
GET http://127.0.0.1:51041/home HTTP/1.1
Host: 127.0.0.1:51041
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.8
Accept: application/xml, text/xml, */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
X-Requested-With: XMLHttpRequest
Referer: http://ipv4.fiddler:51041/WebForm1.aspx
Cache-Control: max-age=0
... 그리고 내 대답은 다음과 같습니다 : 피들러에서, 내 요청은 다음과 같습니다
내 요청이 "수락 : 응용 프로그램/XML을"로 오는HTTP/1.1 200 OK
Server: ASP.NET Development Server/9.0.0.0
Date: Thu, 04 Mar 2010 18:30:04 GMT
X-AspNet-Version: 2.0.50727
Content-Length: 18
Cache-Control: private
Content-Type: application/json; q=0.5
Connection: Close
{"Title":"Foooo!"}
하지만 응답은 "application/json"(반환 된 데이터는 분명히 json 임).
내가 뭘 잘못하고 있니?
이번 주에 살펴 보겠습니다. 나는 방학에서 돌아 왔고 이것이 내가 얻을 수있는 첫 번째 기회를 분류 할 것이다. 후속 조치를 보내 주셔서 감사합니다. -Mike – kindohm
내가 알게 된 것은 ... OR (2.0.3214.437)의 최신 릴리스 후보를 다운로드했지만 여전히 동일한 문제가있었습니다. 제안한대로 jQuery를 수정했습니다.아약스 호출이 수정 헤더를 수락 한 후 모든 일을 시작 : 가 beforeSend : 기능 (XHR) { 이 xhr.setRequestHeader ('응용 프로그램/XML, 텍스트/XML' '동의')} 이상적으로 을, 나는 생각 jQuery 개발자는 헤더가 수정되도록 걱정할 필요가 없습니다. 이제는 해결책을 알게되었지만 다른 사람들은 아마도이 문제를 해결할 것입니다. – kindohm
나에게 맞는 콘텐츠 유형에 따라 자동으로 수락 헤더를 설정해야합니다. 내가 물건에 우선 순위를 매기 지 않고 jQuery에 대한 버그 보고서를 작성하겠습니다. – SerialSeb