2014-01-31 1 views
0

다음과 같이 나는 현재 내 서버에서 JSON 응답을 얻고 공격하기 전에 백본 AJAX 응답을 수정가 모델

{ 
    "id" : 1, 
    "number" : "123456", 
    "name" : "Some Name", 
    "client" { 
     "com.test.domain.Client" : 5 
    } 
} 

I는 다음과 같이 읽을 수있는 응답을 필요

{ 
    "id" : 1, 
    "number" : "123456", 
    "name" : "Some Name", 
    "client" { 
     "id" : 5 
    } 
} 

내가 원하는을 Backbone이 만든 모든 AJAX 응답에 연결하고 ^com.test.domain.*$과 일치하는 키를 id으로 바꿉니다. 아무도 내가 이것을 어떻게 할 수 있는지 안다?

답변

1

이 응답을받는 모델에서 구문 분석 방법을 재정 의하여 할 수 있습니다.

예 : 당신이 가져 오거나 모델의 인스턴스에서 저장 않는 경우

var SampleModel = Backbone.Model.extend({ 

.... 

parse: function(serverResponse){ 
    var serverResponseString = JSON.stringify(serverResponse); 
    var modifiedResponseString = serverResponseString.replace("com.test.domain.Client","id"); 

    return JSON.parse(modifiedResponseString); 

}, 

.... 

}); 

, 그들은이 구문 분석 방법을 통해 이동합니다. 따라서 원하는 값으로 되돌릴 수 있습니다.

+0

+1,이 기법을 사용 하겠지만 정규식과 Backbone.Model.prototype.parse를 사용합니다. – jax

관련 문제