2013-05-06 1 views
2

jquery의 $.ajax()을 사용하여 MessagePack 형식의 데이터를주고받을 수 있기를 바랍니다. 새로운 Content-Type 형식을 지원하기 위해 $.ajax()을 어떻게 확장합니까?

+0

문자열은 문자열입니다. jQuery 데이터 유형은 문자열을 object, html, xml 등으로 변환하는 데 도움이됩니다. 따라서 문자열을 보내고 자신 만의 구문 분석을 수행하십시오. – adeneo

+0

물론, jQuery가 자동으로 json 응답을 구문 분석하는 방식은 멋지다. jQuery의 content-type 인식을 확장 할 수 있다면, 파서에 대한 호출로 코드베이스를 퍼팅하지 않고 프로젝트를'application/json'에서'application/msgpack'으로 전환 할 수 있습니다. –

+0

$ .ajax를 확장하지 않고도 자신 만의 재사용 가능한 함수를 작성할 수는 있지만 $ .ajax 함수를 원하는대로 확장 할 수는 있지만 새로운 Ajax 함수를 작성하는 것보다 훨씬 복잡합니다. $ .ajax를 내부적으로 분석하고 결과를 파싱하여 반환합니다. – adeneo

답변

0

$.ajaxPrefilter()을 사용하면 AJAX 요청을 보내기 전에 사용자 지정 처리를 정의 할 수 있습니다.

반환 된 데이터의 사용자 지정 유형을 처리하려면 $.ajax() 또는 $.ajaxSetup()converters 옵션을 사용하십시오.

+0

문서에서 바로 사용 방법을 알 수 없습니다. '$ .ajaxPrefilter()'는 요청 처리를 처리하는 반면,'converters'는 응답 처리를 처리합니까? –

+0

그래,이 문서는별로 좋지 않습니다. 최선의 방법은 미리 정의 된 유형에 내부적으로 jQuery 소스 코드가 어떻게 사용되는지 확인하기 위해 jQuery 소스 코드를 읽는 것입니다. – Barmar