을에서 HTTP의 StatusCodes를 얻으려면?어떻게 성공적인 경우 어떻게 asyn 메시지를 기다려야하는 지 알고 있나요 어떻게 엠버 데이터
1
A
답변
9
매우 제한된 오류 처리는 ember-data master에있는 DS.RESTAdapter에 대해 recently added입니다. 만들거나 반환 (장애인 커밋 대량으로) 기록을 갱신하고 400과 599 사이의 상태 코드 때
는는 다음과 같은 상황이 발생합니다
가
422 Unprocessable Entity
은 "유효하지 않은"상태로 기록을 전환합니다 서버에서 반환 된 모든 오류를 레코드의errors
속성에 추가합니다.어댑터는 서버가 다음과 같은 형식으로 JSON 응답합니다 가정합니다.
{ errors: { name: ["can't be blank"], password: ["must be at least 8 characters", "must contain a number"] { }
이 (오류 메시지 자체가 문자열하거나 문자열의 배열 될 수있다 타다 남은 데이터는 현재 사용하지 않습니다 이는 신경)
이 상태 감지하려면.
을record.get('isValid') === false
다른 모든 상태 코드는 레코드를 "오류"상태로 전환합니다.
이 상태 사용을 감지하려면
record.get('isError') === true
더 구체적인 뭔가를해야 할 경우 경우 결국 상자 밖으로 엠버 데이터 처리하지만, 그 순간에 할 수있다, 을 확장하고 didError
함수를 사용자 정의하여 직접 추가해야합니다.
Ember-Data는 현재 HTTP 상태에 대해서는 오류 처리를 제공하지 않지만 로드맵에 있습니다. 현재, 하나의 접근법은 어댑터를 확장하여 jQuery Ajax'statusCode'를 사용하고 각 상태 코드에 대한 콜백을 전달하는 것이다. [**이 질문 **] (http://stackoverflow.com/questions/13349035/emberjs-handle-401-not-authorized)는 당신과 비슷하지만 오류 처리 측면에서 더 많은 것이 있습니다. – MilkyWayJoe