0

smpt サーバーには simplesmpt を使用します。エラーの回答を作成したい。たとえば、ユーザーが認証を試みるとき、「ユーザーが存在しません」または「アカウントが禁止されています」と書きたいとします。server.jsを調べて、この回答をクライアントに送信するコードを見つけます。しかし、どうすれば回答を送信できますか?

this.client.send("535 5.7.8 Error: authentication failed: no mechanism available");

これはserver.jsのコードの一部です。この回答をスクリプトから変更して、独自の回答を生成するにはどうすればよいですか?

4

1 に答える 1

0

私の理解が正しければ、ユーザーが認証に失敗したときにカスタム エラー メッセージを送信する必要があります。SimpleSMTP ソース コードを編集する必要はありません。

単純な SMTP サーバー インスタンスを作成する場合は、 に設定requireAuthenticationtrue、 のイベント ハンドラー関数を追加しauthorizeUserます。

コードのモックアップ例:

var options = {
    ...
    requireAuthentication: true
};


var smtp = simplesmtp.createServer();
smtp.listen(25);

smtp.on("authorizeUser", function (connection, username, password, callback) {

        // your custom asynchronous validation function
        userIsNotAuthorized(function(isValidated){
            if(isValidated)
            {
                return callback(new Error("535 5.7.8 Error: authentication failed: no mechanism available", false);
            }

            callback(null, true);

        });

});
于 2013-06-21T14:30:45.670 に答える