私は現在、ユーザーがウェブサイト、ビデオ、画像などにリンクし、実際のマイクロポストを送信する前に情報をプレビューできるマイクロポスト投稿機能を実装しています。
私は使用しています:
Ruby オープン グラフ プロトコル gem:
https://github.com/intridea/opengraph
オープン グラフ プロトコル:
私はそれをテストしましたが、非常に使いやすく、期待どおりに動作します:
コントローラ:
require 'opengraph'
def new
@movie = OpenGraph.fetch('http://www.youtube.com/watch?v=6ifSudReeuM')
end
意見:
<iframe src="<%= @movie.video %>"></iframe>
これにより、期待どおりにビデオが表示されます。コントローラーで動画の URL を手動で指定せずにこれを行う必要がありますが、マイクロポスト フォームを送信する前に、ユーザーがそうできるようにする必要があります。
マイクロポスト フォームには、リンクを貼り付けるためのテキスト フィールドがあります。
リンクを貼り付けるか、マイクロポスト フォーム内の div ボタンをクリックすると、URL をコントローラーに渡し、引数として OpenGraph.fetch() に渡します。
マイクロポストフォームを送信せずに、つまりフォームのメインの送信ボタンをクリックせずにこれを行いたいです。テキストフィールドにテキストが貼り付けられたことを検出するための JQuery を作成し、URL であるテキストフィールドの値を取得できることに気付きました。
質問:
私の質問は、現在のコントローラーで行ったことをどのようにシミュレートできるかです..基本的に、OpenGraph.fetch() の引数としてリンクを手動で提供しましたが、ユーザーがテキストフィールドに貼り付け/入力した URL を使用する方法です。
オブジェクトから取得できるが、マイクロポストを送信する前に、ビデオ画面とビデオの説明など、貼り付けたもののプレビューをユーザーに表示したいだけです。
- ユーザーがリンクを貼り付ける
- オープン グラフ プロトコル gem を使用して情報を取得します
- ページを更新せずに表示する
次に、ユーザーはマイクロポスト フォームのテキスト領域にマイクロポスト コンテンツを入力するか、単に送信することができます。
すべてのデータはデータベースに送信されます。たとえば、マイクロポストのコンテンツとビデオへの URL です。
これを実装する方法を理解できないようです。助けていただければ幸いです。
敬具