この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 13237|答える: 7

[JavaEE] ランディングページで検証コードの検証をどのように実装するか?????

[リンクをコピー]
掲載地 2019/03/19 0:16:43 | | |
<html页面>...
<TR>
      <TDクラス=「td_left」>
         <レーベルフォー=「チェック」>カプチャ</レーベル>
      </TD>
      <TDクラス=「td_rightチェック」>
         <入力タイプ=「テキスト」id=「チェック」名前=「チェック」クラス=「チェック」>
         <imgsrc=「チェックコードサーブレット」身長=「32px」alt=""OnClick="changeCheckCode(これ)">
<文字タイプ=「テキスト/JavaScript」>
   //画像クリックイベント
   機能changeCheckCode(img) {
      IMG。SRC=「チェックコードサーブレット?」+新機能日付().getTime(時間取得)();
                               }
</文字>
      </TD>
   </TR>//验证码拼接部分公共クラスCheckCodeServlet拡張HttpServlet{
   @Override
   公共の空洞doGet(HttpServletRequest リクエスト、HttpServletResponse 応答)投げServletException, IOException{
      
      //サーバーはブラウザにキャッシュを禁止するよう通知します
      response.setHeader(「プラグマ」,「キャッシュなし」);
      response.setHeader
(「キャッシュコントロール」,「キャッシュなし」);
      response.setHeader
(「期限切れ」,"0");
      
      
//記憶の中で長いものを作ってみて80、ワイド30デフォルトの黒い背景
      //パラメータ1:長さ
      //パラメータ2:幅
      //パラメータ3:色
      知力幅 =80;
      
知力高さ =30;
      BufferedImage画像 =
新機能バッファードイメージ(幅、高さ、バッファ画像。TYPE_INT_RGB);
      
      
//ブラシを持ってきて
      グラフィックス g = image.getGraphics();
      
//ブラシの色をグレーに設定してください
      g.setColor(色。グレー);
      
//写真にぴったりの
      g.fillRect(0,0、幅、高さ);
      
      
//制作4ランダム検証コード、12Ey
      String checkCode = getCheckCode();
      
//コードを入力してくださいHttpSession中程度
      request.getSession().setAttribute(「コード」,チェックコード);
      
      
//ブラシの色を黄色に設定してください
      g.setColor(色。黄色);
      
//フォントのサイズを設定します
      g.setフォント(新機能洗礼盤("黒体"フォント。太字,24));
      
//画像に検証コードを書き込む
      g.drawString(チェックコード、15,25);
      
      
//メモリから画像をブラウザに出力します
      //パラメータ1:ピクチャーオブジェクト
      //パラメータ2:画像のフォーマット、例えば:PNG, JPG, GIF
      //パラメータ3:画像が出力される場所
      イメージIO。書く(画像、「PNG」,response.getOutputStream());
   
}
   /**
    *制作4ビットランダム文字列
    */
   私立String getCheckCode() {
      弦のベース =「0123456789ABCDEFGabcdefg」;
      
知力サイズ = 底長();
      ランダムr =
新機能ランダム();
      StringBuffer sb =
新機能StringBuffer();
      
に対して(知力i=1; i<=4; i++){
         //制作0宛先サイズ1ランダムな値
         知力index = r.nextInt(大きさ);
         
//基地文字列は添字を得てインデックス登場人物
         チャーc = base.charAt(インデックス);
         
//遺言c入れてStringBuffer真ん中に入れ
         sb.付加記(c);
      
}
      帰還sb.toString();
   
}
   @Override
   公共の空洞doPost(HttpServletRequest リクエスト、HttpServletResponse 応答) 投げServletException, IOException{
      これ.doGet(リクエスト、レスポンス);
   
}
}


どうやってそれを実現するのか?










先の:Android 7.0の不明で無効な証明書のパケットをキャッチするための解決策
次に:「高品質コードの書き方:C++プログラム改善のための150の提案」李健(著者...)
掲載地 2019/03/19 9:13:39 |


この原則は、ユーザーが検証コードを取得すると、その検証コードの文字列がセッション内に保存され、ユーザーが検証コードを提出すると、その文字列がセッション内の文字列と比較されるというものです。
掲載地 2019/03/19 9:41:21 |
比較時には、大文字を変換します
 地主| 掲載地 2019/03/20 13:14:55 |
QWERTYU 2019年3月19日 09:41 投稿
比較時には、大文字を変換します

ありがとう、兄貴
 地主| 掲載地 2019/03/20 13:15:34 |
シャオ・ジャザ 2019年3月19日 09:13 投稿
原則として、ユーザーが検証コードを取得すると、検証コードの文字列はセッション内に格納され、ユーザーが検証コードを提出すると、セッション内の文字は...

大男のおかげで、シャオバイの質問は比較的低めになってしまう
掲載地 2019/03/20 13:24:54 |
プー・ジービン 2019年3月20日 13:15 投稿
大男のおかげで、シャオバイの質問は比較的低めになってしまう

大丈夫、みんな小白から来たんだ
 地主| 掲載地 2019/03/20 15:39:42 |
シャオ・ジャザ 2019年3月19日 09:13 投稿
原則として、ユーザーが検証コードを取得すると、検証コードの文字列はセッション内に格納され、ユーザーが検証コードを提出すると、セッション内の文字は...

兄さん、私たちには省と市の三層連携をやる任務があります。どうやってやるか、あなたをWeChatに追加します
掲載地 2019/03/20 15:45:50 |
プー・ジービン 2019年3月20日 15:39 投稿
兄さん、私たちには省市の三層連結の任務がありますが、どうやってやるか、あなたを追加します、WeChat...

自分でやれ。

HTMLページには3つの選択ドロップダウンボックスがあり、ユーザーがドロップダウンボックスを選択し、変更イベントをトリガーし、パラメータIDを持つインターフェースからデータを要求し、返されたデータを動的にドロップダウンボックスの次のレベルに追加します。基本的な考え方はこうです。
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com