2009-08-08 9 views
2

私は最近学生組織のウェブサイト(www-sc.xxx.edu/studentorganizations/ourorganization)を作成しました。私たちの大学ではダイナミックなウェブサイトを作成することができないため、別のドメイン(ブログ、ニュースなど)でいくつかのページをホストする必要がありました。さて、私は、外部のURLでいくつかのウェブサイトをホストしていることを隠したい。たとえば、学生がニュースページにアクセスする場合、訪問者がそれを認識せずに外部URLからデータをロードしたいとします。これはjqueryで可能ですか?もしそうなら、どうですか?外部URLにクライアントサイドのコードをロードする

ありがとうございます。

答えて

3

そのサーバー上で「私たちは、動的なWebサイトを作成することはできません」で、あなたはあなたがPHPまたは類似へのアクセスを持っていないことを意味し、ことここに仮定通常、あなたは同じ起源を持っていない現在でいるサイトなどのリソースからデータをロードするためにXMLHttpRequestを使用することはできません。これはセキュリティ上の理由からです:もしあなたのjavascriptがどこからでも任意のデータをロードできるなら、これはあらゆる種類のクロスサイトスクリプティング攻撃の扉を開きます。

のデータを外部URLから表示する場合は、iframeで行うことができます。しかし、そのデータの表示を変更するあなたの能力は非常に限られています。

この標準ソリューションは、外部リソースからデータを取得してクライアントに送信するサーバー側プロキシを作成することですが、これを行うことができない可能性があります。

は、JSONPを使用して第三者データを取得することができます。取得するデータがJSON形式で利用できる場合はです。です。 jQuery supports this nativelyバージョン1.2以降。

+0

あり、基本的に3つの事は何度もループしています。タイトル、説明、日付。私は外部URLデータをjsonに変換することができますが、私のグループメイトの1人はこの方法を試して失敗したと思います。 – Efe

+0

彼はjson形式でデータを印刷しましたが、取得に失敗しました。 jsonデータを取得する標準的な方法はありますか? – Efe

+0

彼はコールバックで '.getJSON'を使用していましたか? JSONPには1つ必要です。私が提供した最後のリンクを見てください。 Flickr JSONP APIでこれを行う方法の例があります。 –

0

これらは今日は非常に人気がありませんが、問題を解決する最も簡単な方法は、単純なHTML iframeに外部コンテンツを組み込むことです。

注:私はので、これは難しい問題です

0

...どのようにiFrameに外観をロードするでしょうか? as:

...必要に応じてjQueryでsrcを変更することができます。

0

iFramesはボーダレスで、ほとんどの最新ブラウザではあなたのウェブページとうまく統合できます。彼らは組織にとって非常に便利な選択肢のようです。

関連する問題