2016-06-14 2 views
0

양식을 사용하여 컬렉션의 문서를 업데이트한다고 가정합니다.유성 메서드로 폼 유효성 검사 및 보안

일반적으로 제출할 때 형식의 필드 정당성을 확인하기 위해 일부 유형의 양식 유효성 검사 프로세스를 사용합니다. 그런 다음 데이터가 확인 된 후 데이터가 유적 메서드에 전달되어 실제로 컬렉션을 업데이트한다고 가정합니다.

하지만 이론적으로 사용자는 자바 스크립트 콘솔을 사용하여 동일한 업데이트 메소드에 대한 유성 호출을 만들 수 있습니다. 보안을 이유로 콘솔을 통해 제출 된 내용의 유효성을 검사하기 위해 필드에서 메소드의 정상 성을 검증해야한다는 의미는 아닙니다.

양식을 통한 일반적인 제출 사례의 경우 동일한 필드가 두 번 확인됩니다 (양식 유효성 검사 중에 한 번, 방법 내에서 한 번).

중복 확인을 효과적으로 처리 할 수있는 방법이 있습니까? 아니면 모든 방법에 중복 필드 확인 단계가 있어야합니까?

답변

0

컬렉션에 대한 유효성을 검사하는 데 aldeed:collection2을 사용하는 것이 좋습니다. 일반적으로/lib에 스키마를 정의하면 클라이언트와 서버에서 업데이트가 유효하지만 코드를 한 번만 작성하면됩니다. 이중 작업을 피하려면 클라이언트를 신뢰할 수 없으므로 서버에서만 유효성 검사를 수행하십시오. 클라이언트 쪽 유효성 검사 비용은 서버가 아닌 사용자가 부담하므로 권장하지 않습니다. 사용자가 일찌감치 피드백을 주므로 onSubmit 대신에 필드를 입력 할 때 유효성을 검사하면 더 나은 UX를 만들 수 있습니다.

내 기본 유효성 검사 방법 : 변경 이벤트 change(){} 각 양식 필드에

  1. 이벤트 핸들러. 이것은 유효한 입력을 위해 필드 테두리를 녹색으로 만들고 잘못된 입력을 위해 빨간색 X를 만드는 것과 같은 일을합니다.
  2. Collection2는
  3. 방법은 해당 인수의 유효성을 검사 클라이언트에서 문서 삽입/업데이트를 확인합니다
  4. Collection2 서버에 문서 삽입/업데이트를 확인합니다

더 읽기 :

+0

메서드의 3 단계에서 yourSchema.validate()를 호출합니까? – dpatte

+0

아니요, 4 단계에서 그렇게하겠습니다. 3 단계에서 기본 args의 유효성을 검사합니다. 삽입 메서드에 전체 문서를 전달하는 경우 3 단계에서 수행 할 수 있습니다. –

+0

이렇게하면 4 단계에서 collection2가 자동으로 처리하도록하고 step3에서는 수동으로 수행합니다. 필요로 할 수있는 주장에 대한 여분의 온 전성 검사. 옳은? – dpatte