2016-12-22 2 views
0

基本的に達成しようとしているのは、特定の場所にリンクを張ったときに、テキストリンクとして表示されないようにしたいのですが、ウェブサイト(chromeやfirefoxのホームページのように)HTML URLをテキストリンクではなくプレビューとして表示

私はiframeで試してみましたが、一部のサイトはレンダリングされません。どのようにこれを行うことができる任意のアイデア?

+3

いくつかのサイト自体が示すことはできませんように私はこれを確実に行うことができるとは思いません'iframe'要素(' X-FRAME-OPTIONS'ヘッダーを通して - あなたが今問題になっています)。回避策はAJAXかもしれませんが、SOPがあなたをブロックするように、CORSを有効にしていないほとんどのサイトでこのクライアント側を実行することはできません。代わりに、あなたのサーバー上でリクエストをプロキシする必要がありますが、これは本当にほとんど役に立たない作業です。 –

+3

[一部のサイトがiframe要素に表示されないように設定されているため]、この問題を回避する方法はありません(http://stackoverflow.com/questions/2117046/how-to-show-live-preview-in-a -small-pop-of-linked-on-link-on-on-link-link#comment49299382_16625709)。あなたの最善の策は、ページの静的スクリーンショットを生成するために何らかの種類のAPIを使用してから、イメージを表示することです。以前はプラグインがあったことがありましたが、それは問題の目的を超えています。 – Terry

答えて

1

ウェブキャプチャサービス(ウェブサイトにアクセスしてスクリーンショットを撮ってサムネイルとして保存し、ウェブサイトのメタデータを解析する仮想クライアント)を使用してこれを達成できます。

「あなたの特別な場所」はコンテンツを解析し、「キャプチャサービス」(php/c#/ javaライブラリがあります)または公開Webキャプチャサービスへのリンクを送信する必要があります。

幸運、公開APIの

例:

http://api.thumbalizr.com/?url=https://stackoverflow.com/questions/41281928/html-url-as-a-preview-instead-of-text-link&width=160

http://www.thumbalizr.com/

+0

ooh、ありがとう、私はこれを試しますiframeを使用して、iframeでレンダリングされていないWebサイトのプレースホルダイメージを作成するために解決するつもりでした:D – Nick

+0

iframeは過去のものですが、あなたのサイトに乗っ取ってスクリプトをリダイレクトします。あなたがリンクを信頼しない限り: – IamSilviu

+1

私はすでにセキュリティ対策が施されていますが、あなたのアイデアはより魅力的に聞こえるので試してみます – Nick

関連する問題