Sesiapa sahaja yang sudah cukup lama dalam pembangunan web sudah biasa dengan perjuangan menguji e-mel, memandangkan begitu banyak aplikasi memerlukan keupayaan untuk menghantar e-mel untuk satu sebab atau yang lain. Sama ada untuk pengesahan, pemberitahuan atau apa-apa sahaja, e-mel adalah bahagian penting dalam web seperti yang telah berlaku sejak beberapa dekad yang lalu.
Masalahnya ialah menguji penghantaran e-mel adalah menyusahkan, dan bagi kebanyakan pembangun ini bermakna menyediakan SendGrid, Mailgun atau mendayakan SMTP pada akaun e-mel peribadi mereka. Lebih-lebih lagi, sebaik sahaja anda mula menghantar e-mel, anda perlu menanganinya dengan menyumbat peti masuk anda semasa anda sedang menguji.
Memang ada banyak cara untuk mengatasinya. Sekadar menamakan beberapa:
Walaupun ini semua penyelesaian yang sah yang telah saya cuba (selain daripada menyediakan pelayan mel tempatan), semuanya mempunyai kelemahan mereka sendiri.
Sebagai contoh, menggunakan akaun e-mel peribadi anda adalah bagus untuk penyelesaian yang cepat dan kotor, tetapi ia tidak berskala baik apabila anda menguji sejumlah besar e-mel. Penyediaan pelayan mel tempatan adalah sedikit lebih terlibat, dan sementara ia berskala ia menambah satu lagi lapisan kerumitan pada persekitaran pembangunan anda. Menggunakan perkhidmatan e-mel ialah jalan tengah yang baik, tetapi ia menambahkan satu lagi kebergantungan pada projek anda dan boleh menyebabkan kos tambahan.
Atas sebab ini dan banyak lagi, saya telah mengusahakan PostPilot, alat ujian e-mel sumber terbuka dan percuma yang diilhamkan oleh Mailpit dan Laravel Herd.
Bagi mereka yang tidak sedar, pembangun Herd telah menyelesaikan isu ini sebagai sebahagian daripada timbunan Laravel sebentar tadi dengan mencipta GUI yang bagus yang menyenaraikan e-mel yang dihantar dan membolehkan anda melihat dan berinteraksi dengan mereka. Ia merupakan penyelesaian yang cantik dan menjadikan $100 untuk lesen Herd Pro hampir berbaloi (bahagian lain Herd mengambilnya dari hampir kepada ya yang pasti). Malangnya, ia bukan percuma, bukan sumber terbuka, hanya tersedia pada macOS dan Windows, dan kebanyakannya berguna untuk ekosistem Laravel.
Seperti Mailpit, PostPilot ditulis dalam Go dan dilengkapi dengan UI yang cantik, pemberitahuan dan keupayaan untuk berinteraksi dengan e-mel masuk. Tidak seperti Mailpit, PostPilot ialah aplikasi GUI dan bukannya pelayan tanpa kepala dengan antara muka web. Saya tidak akan mengatakan sama ada lebih baik atau lebih teruk, tetapi ia memenuhi khalayak yang berbeza mengikut keutamaan.
PostPilot sedang dalam pembangunan yang sangat aktif dan masih dalam peringkat awal. Saya baru sahaja mengeluarkan versi 0.1.2 yang merupakan keluaran sebenar pertama, dan saya telah berjaya setakat ini untuk menyediakan proses binaan untuk Linux dan Windows. Buat masa ini, cara yang disyorkan untuk menjalankan PostPilot pada macOS ialah membinanya daripada sumber. Sebaik sahaja saya sampai ke tahap yang saya mampu membeli akaun pembangun Apple dan sijil tandatangan Windows, saya akan mula bekerja pada pemasang untuk kedua-dua platform.
Perkara seterusnya yang akan saya usahakan ialah dokumentasi yang lebih baik untuk proses pembangunan, dan kemudian saya akan cuba mendapatkan beberapa ciri yang lebih popular daripada Mailpit berfungsi, seperti penyepaduan SpamAssassin dan keupayaan untuk menapis e-mel berdasarkan kriteria tertentu.
Jika anda berminat untuk mengikuti atau menyumbang, anda boleh mencari projek itu di GitHub, dan jika anda ingin membantu saya dengan keupayaan untuk mendapatkan binaan Windows dan macOS, anda sentiasa boleh menyokong saya di Patreon, Penaja Github, atau Ko-Fi.
Atas ialah kandungan terperinci Temui PostPilot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!