laravelでメールのバリデーションを行う際に、
MXレコードで有効なドメインかどうか確認するvalidationはどの様なコードになるのでしょうか?
5.5だと標準でのバリデーションがないようです。
バージョン laravel 5.5
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
回答3件
2020/11/11 05:05
5.5でほしいらしいです。
8使えと言うアドバイスでしたら。
いいえ。Laravel8に実装されている機能なのだから、その実装がどうなっているかを確認すればいい、という意図です。
質問は
「MXレコードで有効なドメインかどうか確認するvalidationはどの様なコードになるのでしょうか?」
なのですから
ちょっと回答の質がレベル高くてついていけません。
しかしご返信ありがとうございます。
2020/11/11 05:39 編集
なるほど、それなら有用ですね。+1
@big_sky
コードを移植して使うのは確かにハードル高いと思いますが、
https://github.com/egulias/EmailValidator
の機能をそのまま使うだけなら、このパッケージをインストールして使うだけではないですか?
2020/11/11 06:49
> ちょっと回答の質がレベル高くてついていけません。
ついていった方が良いです。
MXが無ければメールを送れないという判断が誤っているので、それだったらこういうライブラリに一任するのがベストです。
※このコメントを元に、改めてメール周りの学習をするとしてもです
なるほど、ライブラリー使うか、カスタムバリデーションで検討してみます。
0
ベストアンサー
自作するのなら、dns_get_recordとかgetmxrrを使えば良いと思いますが、phper.kさんが紹介されているものを使うのが良いでしょう。
Laravel5の時点ではないというだけの話であって、composer requireでインストールすれば使えます。
最初は難しいかもしれませんが、composerの使い方やライブラリを理解して使う努力をした方が自作するよりもコスパ(学習時間:精度)が良いです。
投稿2020/11/11 10:27
総合スコア6434
0
投稿2020/11/11 04:16
編集2020/11/11 04:19総合スコア80896
ご回答ありがとうございます!
現在バウンスメールの割合を減らすための実装を考えており、メールアドレスの形式は正しくても、ドメインが存在しない場合にバウンスメールになってしまうためアドレスだけのvalidationだけだと足りないかと思われます。
回答の前半に書いてます。カスタム作ってください。そもそも「ドメインのチェック」自体がそれなりに難易度の高いものです。
あくまでユーザーの正確性を期待し、わざわざ実装してないのでは。
「届いていなければメールアドレスが間違っている可能性があるので確認の上、再度入力してください」としているサービスの方が多いですよ。
そこまでする必要があるかどうかも一点。
悪意のあるユーザーからの攻撃を防ぎたいならまたそれも要件として書かれてないとわからない部分です。
前提や背景を追記してください。
そうなのですね。
現在、メール周りはAWSを使っているのですが、SESのアカウントのステータスがSHUTDOWNになっており、SESでメールが送信できない。
というのが最初の発端です。
カスタムどれくらいまで作れるか分かりませんが、一度試してみます。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
