このサイトの作り方 (3) 匿名掲示板とトリップ機能
今回は、匿名でも書き込める掲示板機能について書きます。 掲示板は、2ちゃんねる風の匿名投稿ができる仕組みにしました。名前を入力しなければ「名無し」として投稿でき、「名前#秘密の文字列」の形式で入力すると、その文字列をもとにした「トリップ」という短い符号が名前の後ろに付きます。同じ文字列を使い続ける限り、名乗らなくても同一人物だと分かる、昔ながらの仕組みです。 この掲示板機能は、もともと投稿機能と同じアプリの中に間借りする形で作っていたのですが、役割が大きく異なるため、途中で独立したアプリとして切り出しました。切り出す際には、データベースのテーブルを新しく作り直す形をとり、幸い当時はまだ利用者がいなかったため、データ移行の心配なく進めることができました。 また、同じ人が連続で投稿しすぎないように、投稿後30秒間は再投稿できない制限も入れています。荒らし対策として、匿名投稿者のIPアドレスも記録するようにしました。 掲示板を独立させる作業の中で、テンプレート内のリンク先の指定がひとつだけ古いままになっていて、レス投稿ボタンを押すとエラーになる不具合も起きました。こうした「移行時のうっかり漏れ」は、実際に手を動かしてみないと気づきにくいものだと実感しました。 トリップの仕組みは、入力された秘密の文字列をそのまま保存するのではなく、ハッシュ関数という一方向の変換をかけてから短く切り出して保存しています。これにより、元の文字列が漏れる心配をせずに「同じ人らしさ」だけを示せるようになっています。昔からある掲示板文化の知恵を、実際に自分で実装してみると、その巧妙さに感心させられます。 次回は、SNSアカウントでログインできる仕組みについて書きます。
コメント(0)
まだコメントはありません
ログインするとコメントできます。