Saya selalu berada di bawah asumsi bahwa browser email-validation-regex lebih kuat daripada beberapa pola regex di JS / PHP.
Majikan saya baru saja menunjukkan kepada saya bahwa kedua string dianggap benar (akhirnya di FF28):
[email protected] // Expected to be true, is true
test@test // Expected to be false, is true
Mengapa yang terakhir ini benar? Apakah ini bug, atau sesuatu untuk masa depan? Karena sejauh yang saya tahu, tidak benar untuk tidak menggunakan ekstensi (selain dari mungkin localhosts).
Adakah yang bisa menjelaskan ini?
email
firefox
validation
Martijn
sumber
sumber
<input type="email" />
hanya berguna untuk situs web seluler, sehingga sebagian besar keyboard akan muncul dengan tampilan yang sesuai (dengan@
kunci, dan beberapa.com
pintasan ...).pattern
test@test
alamat email yang valid ... itu diperlakukantest
sebagai atld
. Sama sepertitest@com
alamat email yang valid untukcom
tld ... tools.ietf.org/html/rfc2822#section-3.4.1Jawaban:
Itu valid karena
test
bisa menjadi domain tingkat atas danlocalpart@top-level-domain
merupakan alamat email yang valid.Lihat misalnya alamat Email, bagian domain
sumber
test
sebagai TLD hanya karena kebetulan belum terdaftar.Anda dapat mengedit file host Anda atau menjalankan server DNS di jaringan lokal untuk membuat mesin dengan nama domain tingkat atas. Alamat email hanya akan dapat diakses jika dirutekan hanya dalam jaringan lokal itu tetapi kemungkinan konfigurasi.
sumber
Perhatikan juga bahwa browser web tidak diharuskan untuk melakukan pemeriksaan validasi apa pun. Browser lama tidak melakukan hal khusus dengan alamat email. Peramban yang lebih baru mungkin memvalidasi, tetapi jenis 'surel' paling berguna pada perangkat seluler tempat keyboard khusus ditampilkan kepada pengguna.
sumber