2010-12-13 4 views
3

전자 메일 확인 절차에 대해 물어보고 싶습니다. 가장 좋은 방법은 무엇입니까? 지금까지 register.aspx 양식의 정보를 저장하는 클래스가 있는데 사용자에게 전자 메일을 보냅니다.하지만 그를 보내야합니까? 사용자에게 guid를 보내야합니까?전자 메일 확인 - 어떤 방법

또한 등록 데이터를 저장하는 멤버십 클래스가 세션에 저장됩니다. 사용자 세션이 시간 초과되면 멤버십 클래스가 무효화되고 사용자가 다시 등록하라는 메시지가 나타나기 때문에 좋은 생각입니다. Session Timeout 웹 페이지, 좋은 방법입니까?

하지만 사용자에게 guid를 보내고 GUID를 사용하여 데이터베이스에 사용자 데이터를 저장 한 다음 해당 GUID를 사용하여 이메일 GUID를 확인하면 어떻게해야합니까?

나는 또한 이메일이 유효하다는 것을 확인하는 정규 표현식을 가지고있다. 아직 잘 테스트되지 않았고, 제대로 테스트하지 않았다. 거기에 무료 이메일 검증 api가 있는가?

ASP.NET VB를 사용하고 있습니다.))

1 정규식

3) 유효한 경우 사용하는 이메일의 유효성을 검사 사용자의 이메일

2) 요청하는 타임 스탬프 (DateTime.Now를 만들 : 여기

답변

3

내가 할 것 인 것이다 사용자의 ID 및 필요한 기타 유용한 정보를 첨부하십시오. 적절한 구분 기호를 사용할 수 있습니다.

4) 데이터를 암호화하고 암호화 된 사용자 토큰 및 이메일

5) 사용자가 클릭, 아마도 필요한 시간이 만료 (타임 스탬프를 확인, 정보를 해독)하고 사용하는 사용자의 ID로 URL을 구축 데이터베이스에서 데이터를 가져옵니다.

+2

내가 이메일 확인을위한 정규식을 사용하지 것이다 -

그들은 무료 천 매달 요청을 제공하고 있습니다. 너무 쉽게 지나치게 쉽게 RegEx 작성자는 이메일 주소가 지원하는 모든 것을 설명하지 않습니다.보다 신뢰할 수있는 옵션은 실제로 사용자의 전자 메일 서버에 연결하여 주소의 유효성을 검사하도록 요청하는 것입니다. –

+0

Remy Lebeau, "hotmail"과 같은 사용자 이메일 서버에 연결하려고했지만 오류가 발생했습니다. "연결된 당사자가 일정 기간이 지난 후에 제대로 연결되지 않았거나 연결 호스트가 잘못되어 연결 시도가 실패했습니다. 64.4.20.174:25 "는 방화벽이나 바이러스 소프트웨어를 통해 차단되는 것처럼 보입니다. 작업 영역이 있습니까? – redoc01

+0

나중에 데이터를 디코딩 할 수있는 방식으로 데이터를 암호화 할 수 있습니까? – kseen

1

GUID를 포함하여 데이터베이스에 데이터를 저장하십시오. 레코드 상태를 "비활성"으로 설정하십시오. GUID가 포함 된 링크가 포함 된 이메일을 보냅니다. 링크를 클릭하면 등록 레코드를 "활성"으로 설정하십시오. "활성"레코드 만 로그인 할 수 있습니다.

정규식으로 이메일 주소의 유효성을 효과적으로 검사 할 수 없습니다 -이 사이트에서 이유를 검색하십시오.

0

.Net.에서 이와 같이 이메일 주소를 확인해야합니다. 자세한 내용은 this question을 참조하십시오.

MailAddress address = new MailAddress(input) 

이메일 주소가 유효하지 않은 경우 예외가 발생합니다.

2

이것은 이미 허용 된 답변에 추가 된 것입니다. 전자 메일 유효성 검사를 Regex 구문 만 검사하도록 제한하지 않습니다.

구문, 오타, SMTP & MX- 레코드 (이메일 주소의 실제 존재 여부를 확인하는), 무료 또는 일회용 이메일 등 다양한 요소를 검사하는 데 사용하고있는 것이 있습니다. . mailboxlayer.com

관련 문제