URL 短縮機能は、長い Web サイトの URL をよりポータブルなサイズに短縮することで、共有の問題を解決します。
ご存知のとおり、ほとんどの Web サイトは、ユーザーに連絡するため、またプロモーション SMS の送信時に Twitter (ツイート文字数制限 140) や SMS などのサービスを使用しているため、長い Web URL を送信するのは少し困難です。短縮された URL を生成するにはURL の他にも、Goo.gl や Bitly など、リンク短縮サービスが多数あります。
このソリューションは、次の 2 つの主要な部分で構成されます。
- ユーザーがリンクを訪問した回数やリンクが属するユーザーの情報を保存するためのクリックカウンターを含む短縮リンクの詳細を保存するための shorted_url と呼ばれるアクティブレコードモデル。
- ユーザーが短縮 URL をクリックしたときに、ユーザーを特定のリンクにリダイレクトするコントローラー。このコントローラーはデータベースから実際のリンクを取得します。
解決策の詳細:
- 元の URL への Google の機能を最大限に維持するために、URL のコントローラーは、推奨されるリダイレクトの種類である 301 リダイレクトを実行します。
- モデル ID を使用する代わりに、一意の 6 文字コードを使用しています。
URL短縮アプリケーションを構築しましょう
コマンドを実行する
cd でアプリケーション ディレクトリに移動します
いつものようにバンドルインストールを実行します
次に、短縮 URL を保存するテーブルを作成する必要があります。
次に、以下のコードを移行ファイルに追加します。
shorted_url というモデルに追加できる短縮 URL を生成するプログラミング ロジックを作成する必要があります。
shorted_url.rb を開きます。以下のファイルのようになります。
短縮 URL のリダイレクトを生成および管理するコントローラーを作成しましょう
そして、以下のようにコードを追加します。
ユーザーからの入力を取得し、短縮 URL を表示するビュー ファイルを作成する必要があります。
views/shoretened_urls/index.html.erb を作成します
短縮 URL を表示するには、もう 1 つのファイルを作成する必要があります
views/shoretened_urls/shortened.html.erb
次の行をroutes.rbファイルに追加します。
最後に、URL 短縮アプリが正常に動作していることを確認できます。
ブラウザを開いて、リンク localhost:3000 にアクセスします。
短くしたい長い URL をコピーして貼り付け、「送信」ボタンをクリックすると、URL が短縮されたことがわかります。
ありがとう!
保存