這是開源的,但是我還提供了一種SaaS解決方案,該解決方案在一個友好的網絡界面中包裝了check-if-email-exists 。如果您有興趣,請在Reacher中找到更多。如果您有任何疑問,可以通過[email protected]與我聯繫。
3種非SAA的方法可以開始使用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 escists.toml:
[ 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 ) ;
}參考文檔託管在文檔中。
輸出將是具有以下格式的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 FIELD |
|---|---|---|---|
| ✅ | 電子郵件可達性 | 我們對將電子郵件發送到此地址有多自信?可以是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 |
| ✅ | Gravatar URL | Gravatar電子郵件地址配置文件圖片的URL | misc.gravatar_url |
| ✅ | 我有過PW嗎? | 該電子郵件是否在數據洩露中受到妥協? | 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 affero許可證v3兼容的許可證的開源申請,則可以根據AGPL-3.0的條款使用check-if-email-exists 。
➡️閱讀有關Reacher許可證的更多信息。
從源或從源構建HTTP後端的CLI。