이것은 오픈 소스이지만, 친절한 친절한 웹 인터페이스에 확인 된 check-if-email-exists 있는 SaaS 솔루션도 제공합니다. 관심이 있으시면 Reacher에서 자세한 내용을 확인하십시오. 궁금한 점이 있으면 [email protected]로 저에게 연락하십시오.
3 가지 비 SAAS는 check-if-email-exists 으로 시작하는 방법입니다.
이 옵션을 사용하면 클라우드 인스턴스 또는 자신의 서버에서 Docker?를 사용하여 HTTP 백엔드를 실행할 수 있습니다. 아웃 바운드 포트 25는 열려 있어야합니다.
docker run -p 8080:8080 reacherhq/backend:latest 그런 다음 다음 본문과 함께 POST http://localhost:8080/v0/check_email 요청을 보내십시오.
{
"to_email" : "[email protected]" ,
"proxy" : { // (optional) SOCK5 proxy to run the verification through, default is empty
"host" : "my-proxy.io" ,
"port" : 1080 ,
"username" : "me" , // (optional) Proxy username
"password" : "pass" // (optional) Proxy password
} ,
}참고 : CLI 바이너리는 백엔드에 연결되지 않으며 컴퓨터에서 직접 이메일을 확인합니다.
릴리스 페이지로 가서 플랫폼의 바이너리를 다운로드하십시오.
> $ check_if_email_exists --help
check_if_email_exists 0.9.1
Check if an email address exists without sending an email.
USAGE:
check_if_email_exists [FLAGS] [OPTIONS] [TO_EMAIL]모든 옵션과 플래그에 대해서는 전용 readme.md를 확인하십시오.
Rust 프로젝트에서는 Cargo.toml 에 check-if-email-exists 추가 할 수 있습니다.
[ dependencies ]
check-if-email-exists = " 0.9 "다음과 같이 코드에서 사용하십시오.
use check_if_email_exists :: { check_email , CheckEmailInput , CheckEmailInputProxy } ;
async fn check ( ) {
// Let's say we want to test the deliverability of [email protected].
let mut input = CheckEmailInput :: new ( vec ! [ "[email protected]" . into ( ) ] ) ;
// Verify this email, using async/await syntax.
let result = check_email ( & input ) . await ;
// `result` is a `Vec<CheckEmailOutput>`, where the CheckEmailOutput
// struct contains all information about our email.
println ! ( "{:?}" , result ) ;
}참조 문서는 Docs.rs에서 호스팅됩니다.
출력은 아래 형식의 JSON이되며 필드는 자명해야합니다. [email protected] 의 경우 (Gmail에서 비활성화되어 있음) 정확한 출력은 다음과 같습니다.
{
"input" : " [email protected] " ,
"is_reachable" : " invalid " ,
"misc" : {
"is_disposable" : false ,
"is_role_account" : false
},
"mx" : {
"accepts_mail" : true ,
"records" : [
" alt3.gmail-smtp-in.l.google.com. " ,
" gmail-smtp-in.l.google.com. " ,
" alt1.gmail-smtp-in.l.google.com. " ,
" alt4.gmail-smtp-in.l.google.com. " ,
" alt2.gmail-smtp-in.l.google.com. "
]
},
"smtp" : {
"can_connect_smtp" : true ,
"has_full_inbox" : false ,
"is_catch_all" : false ,
"is_deliverable" : false ,
"is_disabled" : true
},
"syntax" : {
"domain" : " gmail.com " ,
"is_valid_syntax" : true ,
"username" : " someone " ,
"suggestion" : null
}
}| 포함되어 있습니까? | 특징 | 설명 | JSON 필드 |
|---|---|---|---|
| ✅ | 이메일 도달 가능성 | 이 주소로 이메일을 보내는 데 얼마나 자신감이 있습니까? safe 하고 risky 하거나 invalid unknown 중 하나 일 수 있습니다. | is_reachable |
| ✅ | 구문 검증 | 주소가 구문 적으로 유효합니까? | syntax.is_valid_syntax |
| ✅ | DNS는 검증을 기록합니다 | 이메일 주소의 도메인에 유효한 MX DNS 레코드가 있습니까? | mx.accepts_mail |
| ✅ | 일회용 이메일 주소 (DEA) 유효성 검사 | 알려진 일회용 이메일 주소 제공자가 주소를 제공합니까? | misc.is_disposable |
| ✅ | SMTP 서버 유효성 검사 | 이메일 주소 도메인의 메일 교환기에 성공적으로 연락 할 수 있습니까? | smtp.can_connect_smtp |
| ✅ | 이메일 배달 가능성 | 이 주소로 전송 될 수 있습니까? | smtp.is_deliverable |
| ✅ | 사서함이 비활성화되었습니다 | 이 이메일 주소가 이메일 제공 업체가 비활성화 했습니까? | smtp.is_disabled |
| ✅ | 전체받은 편지함 | 이 사서함의받은 편지함이 가득 차 있습니까? | smtp.has_full_inbox |
| ✅ | 포괄적 인 주소 | 이 이메일 주소는 포괄적 인 주소입니까? | smtp.is_catch_all |
| ✅ | 역할 계정 유효성 검사 | 이메일 주소가 잘 알려진 역할 계정입니까? | misc.is_role_account |
| ✅ | 그라비타르 URL | Gravatar 이메일 주소 프로필 사진의 URL | misc.gravatar_url |
| ✅ | 내가 Pwned를 받았습니까? | 이 이메일이 데이터 위반으로 손상 되었습니까? | misc.haveibeenpwned |
| 무료 이메일 제공 업체 수표 | 이메일 주소가 알려진 무료 이메일 제공 업체에 바인딩됩니까? | 이슈 #89 | |
| 구문 검증, 제공자 별 | 대상 메일 제공 업체의 구문 규칙에 따르면 주소가 구문 적으로 유효합니까? | 이슈 #90 | |
| 허니팟 감지 | 테스트 중에 이메일 주소가 허니팟을 숨 깁니다. | 이슈 #91 |
많은 온라인 서비스 (https://hunter.io, https://verify-email.org, https://email-checker.net)는이 서비스를 유료 수수료로 제공합니다. 다음은 이러한 도구에 대한 오픈 소스 대안입니다.
check-if-email-exists 의 소스 코드는 이중 라이센스 모델 로 제공됩니다.
상업용 사이트, 도구 및 애플리케이션을 개발하기 위해 check-if-email-exists 사용하려면 상업용 라이센스가 적절한 라이센스입니다. 이 옵션을 사용하면 소스 코드가 독점적으로 유지됩니다. https://reacher.email/pricing에서 check-if-email-exists 상업용 라이센스를 구입하십시오.
GNU Affero GPL 라이센스 v3과 호환되는 라이센스에 따라 오픈 소스 응용 프로그램을 작성하는 경우 AGPL-3.0의 조건에 따라 check-if-email-exists 사용할 수 있습니다.
➡️ Reacher의 라이센스에 대해 자세히 알아보십시오.
소스에서 CLI를 구축하거나 소스에서 HTTP 백엔드를 작성하십시오.