2章認証機能の追加
1章で作成したチャットアプリケーションでは、クライアントとサーバーとの間でメッセージを送受信する際の性能が重視されていました。一方、このアプリケーションではユーザーが誰と会話しているのかわかりません。この問題への解決策の1つに、サインアップとログインの機能を用意するというものがあります。ユーザーが各自のアカウントを作成し、認証を行った上でチャットのページを開くようにします。
何もない状態から開発を始めようとする際には、他の開発者が同じ課題をどのように解決したかを調べる必要があります。完全に未知の課題はほとんどありません。公開されているソリューションや標準規格の有無も確認し、これらを利用できないかどうか検討しましょう。認証や権限の付与というのは、とても昔からある問題です。特にWebの世界では、さまざまなプロトコルが考案されていてどれを選ぶか迷うほどです。このような場合には、ユーザーの観点から課題をとらえなおすのが一番です。
今日のWebサイトの多くは、既存のソーシャルメディアやコミュニティーのサイトでのアカウントを使ったサインインが可能です。このしくみを活用すれば、製品やサービスごとにアカウント情報を何度も入力するという手間を省けます。新しいサイトへのコンバージョン率が高まるという効果も期待できます。
この章では、チャットアプリケーションを拡張して認証の機能を追加します。ここではGoogleやFacebookあるいはGitHubのアカウントを使ったサインインを可能にしますが、他のアカウントに対応させるのも簡単です。チャットに参加する前に、ユーザーはサインインを求められます。ここで使われたアカウントの情報を元にして入室者リストやメッセージの発言者を表示し、ユーザーエクスペリエンスの強化を図ります。 ...
Get Go言語によるWebアプリケーション開発 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.