Geçici mail
Node.js ile.
Tek kullanımlık bir gelen kutusu oluşturun, sorgulayın ve doğrulama kodunu çekin — doğrudan test paketinizden.
const res = await fetch("https://evilmail.pro/api/temp-email", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": process.env.EVILMAIL_KEY,
},
body: JSON.stringify({ ttlMinutes: 30 }),
});
const { data } = await res.json();
console.log(data.email); // [email protected]Node.js'te geçici mail, gerçek bir gelen kutusu ya da ortak bir Gmail hesabı olmadan e-posta akışlarını test etmenin temiz yoludur. EvilMail API ile tek kullanımlık bir adres oluşturur, kayıt veya parola sıfırlama akışınızı tetikler, gelen kutusunu HTTP üzerinden sorgular ve mesajdaki tek seferlik kodu okursunuz — uçtan uca, saniyeler içinde ve temizlenecek hiçbir şey bırakmadan. Her çağrı, `X-API-Key` başlığı taşıyan sade bir `fetch` olduğundan Jest, Playwright veya herhangi bir CI çalıştırıcısına sıfır bağımlılıkla oturur.
Node.js ile neden geçici mail kullanmalısınız
Uçtan uca kayıt testleri
Her test için taze bir gelen kutusu açın, gerçek kayıt akışını çalıştırın ve doğrulama e-postası üzerinde assert edin — mock yok, eskimiş hesap yok.
Gerçek bir posta kutusu olmadan CI/CD
Her çağrı, API anahtarı taşıyan durumsuz bir HTTP isteğidir; bu yüzden GitHub Actions, GitLab CI veya Jenkins üzerinde tarayıcısız ve ortak gelen kutusu olmadan başsız çalışır.
OTP ve magic-link çıkarımı
Mesaj gövdesini okuyun ve tek satırlık bir regex ile altı haneli kodu ya da onay bağlantısını çekin, ardından akışı programatik olarak sürdürün.
Paralel çalışmaya uygun izolasyon
Her adres bağımsızdır; böylece yüzlerce test, aynı posta kutusunda çakışmadan paralel çalışabilir.
Akış — 3 çağrıda Node.js geçici mail
Tek kullanımlık bir gelen kutusu oluşturun
const create = await fetch("https://evilmail.pro/api/temp-email", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": process.env.EVILMAIL_KEY,
},
body: JSON.stringify({ ttlMinutes: 30 }),
});
const { data } = await create.json();
const { email, sessionToken } = data;
// hand `email` to your signup flow, keep `sessionToken` to read the inboxE-posta gelene kadar sorgulayın
async function waitForMail(token, tries = 20) {
for (let i = 0; i < tries; i++) {
const r = await fetch(`https://evilmail.pro/api/temp-email/${token}`);
const { data } = await r.json();
if (data.messages?.length) return data.messages;
await new Promise((s) => setTimeout(s, 3000)); // wait 3s, retry
}
throw new Error("No mail arrived in time");
}
const messages = await waitForMail(sessionToken);Mesajı okuyun ve kodu çıkarın
const { uid } = messages[0];
const r = await fetch(
`https://evilmail.pro/api/message/${uid}?token=${sessionToken}`,
{ headers: { "X-API-Key": process.env.EVILMAIL_KEY } },
);
const { data: mail } = await r.json();
const otp = (mail.text || "").match(/\b(\d{6})\b/)?.[1];
console.log("Verification code:", otp);Node.js geçici mail — SSS
Q1Node.js'te nasıl geçici mail adresi alırım?−
https://evilmail.pro/api/temp-email adresine X-API-Key başlığınızla bir POST gönderin. Yanıt, gerçek ve çalışan bir adres ile gelen kutusunu okumak için kullanacağınız bir sessionToken içerir. SDK'ye gerek yok — bu sade bir fetch'tir.
Q2Bunu otomatik testler (Jest, Playwright, Cypress) için kullanabilir miyim?+
Evet — asıl kullanım amacı budur. beforeAll/setup adımında bir gelen kutusu oluşturun, akışınızı çalıştırın, gelen kutusunu sorgulayın, kodu çıkarın ve assert edin. Her çağrı durumsuz bir HTTP isteği olduğundan, herhangi bir çalıştırıcıda ve CI'da çalışır.
Q3E-postadan tek seferlik kodu nasıl çıkarırım?+
Tam mesajı GET /api/message/{uid}?token=… ile okuyun, ardından mail.text veya mail.html üzerinde bir regex çalıştırın. /\b(\d{6})\b/ gibi bir desen altı haneli bir OTP çeker; magic link veya daha uzun kodlar için uyarlayın.
Q4API anahtarına ihtiyacım var mı ve bir hız sınırı var mı?+
EvilMail panelinizden bir API anahtarına ihtiyacınız var. Ücretsiz ve ücretli katmanların farklı hız sınırları vardır; ücretli planlar ayrıca daha uzun ömürlü test hesapları için özel alan adlarını ve kalıcı posta kutularını açar.
Q5Gelen kutusu ne kadar süre yaşar?+
Oluştururken ttlMinutes değerini ayarlayın (ücretsiz akışta en fazla 24 saat). Korumak istediğiniz test hesapları için ücretli bir planda özel alan adı kullanın; böylece adres asla süresi dolmaz.
Diğer dillerde geçici mail
Tek bir API anahtarı. Ölçekte tek kullanımlık gelen kutuları.
Sınırsız tek kullanımlık adres oluşturun, bunları HTTP üzerinden sorgulayın ve doğrulama kodlarını doğrudan testlerinize ve CI'nıza çekin. Başlaması ücretsiz; özel alan adları ve daha yüksek limitler ücretli planlarda.

