2012-11-08 3 views
2

그래서 backbone.js를 사용하고 있으며 모델을 저장하려고합니다. 서버 측에서는 수신 된 모델에 대한 GUID를 생성하고 있으므로 모델에 클라이언트 측에서이 GUID를 반환합니다.저장하는 동안 BackBone.js에 값 반환

내 함수는 개체를 서버에 전송

this.save({}, 
     { 
      success: function (model, response) { 
       alert(response); 
      }, 
      error: function (model, response) { 
       alert(response) 
      } 
     }); 

같은, 그것이 내가 포스트에서 원하는 값을 반환합니다. 그것은 ( HTTP/1.1 200 OK)을 반환하지만 아직 오류 함수를 호출합니다 (이 함수에는 내 반환 값이 있습니다). 이유가 무엇입니까? 그건로

내가는 200 GUID를 다시 받고 있지만 성공을 발사되지 않도록

JSON.stringify(response) 
"{"readyState":4,"responseText":"5dad212e-73bf-4e01-911a-397b81f77022","status":200,"statusText":"OK"}" 

콘솔에서 다음을했다 .... 난 정말 그냥 오류 기능을 사용하지 않으 발사해야 할 것이 아니라 :

미리 감사드립니다.

+0

하나의 모델 값을 저장 호출의 첫 번째 매개 변수에 명시 적으로 입력하십시오. 문서에는 해당 해시의 지정된 속성 만 저장된다는 내용이 나와 있습니다. 또한 오류 함수에서 모델 인수의 내용은 무엇입니까? –

+0

매개 변수를 추가하지 않아도 도움이되지 않았습니다. 그러나 모델에 무엇이 있는지에 대한 질문은 흥미 롭습니다. 언뜻 보면 모델이 잘 보였다. 그러나'JSON.stringfy (model)'을 시도했을 때 TypeError : 순환 형 구조체를 JSON으로 변환했습니다. 순환 참조가 있고 null로 설정 한 속성이 있음을 알아 차렸고 문자열화할 수있었습니다. 콜백에서 모델이 저장되기 전에 모델을 문자열화할 수 있습니다. – Jordan

+0

순환 참조가 수정되었습니다. 콜백이 완료되기 전에 다른 콜백이 시작되었습니다. 나는 다른 콜을 호출하는 함수를 우리가보고있는 콜백으로 다시 옮겼다. (혼란 스럽다 ... 많은 일이있다.) 이제 JSON.stringify는 오류로 돌아 오는 모델을 만들 수 있지만 여전히 ' t 작업으로 인해 문제라고 생각하지 않습니다. (나중에 또 하나 였을 것입니다. 감사합니다!) – Jordan

답변

3

resposneText에서 서버가 응답을 반환하지 않는 것으로 보입니다. 적절한 json 개체가 아닙니다. 같은

{ 
    "guid" : "id_to_be_returned" //, 
    // and other attributes to be added in the model 
} 

을 서버 반환 응답을하고 json으로 응답 유형을 확인하십시오. 그것은 작동해야합니다.