2012-03-14 14 views
0

指定されたURLにヒットしてURLをヒットできるかどうかの返信のみが可能ですか? URLの内容やページの情報は必要ありません。必要なのは、URLに達したことで、サイトに入るすべてのカスタムファイアウォールに侵入したことです。接続を確認するための安定したURL JavaScript

+0

何を、ネットワークのpingのように:で

ルック? – j08691

+0

JSは、元のセキュリティポリシーが同じため、AJAX呼び出しで任意のURLをヒットすることはできませんが、JSONP呼び出しのようにsomethignを実行してURLに到達可能かどうかを確認できます。 ''タグを動的に作成し、そのリクエストのステータスがどのようになっているのかを確認する方がよいでしょう。 –

答えて

2

いいえ、あなたはSame Origin Policyの壁に当たったでしょう。

本当にサーバー側で行う必要があります。 JS側では、簡単なAjaxでサーバー側にテストし、ブール値を返すことができます。これは、クライアントと目的のURLの間ではなく、サーバーと目的のURLとの間の接続のみをテストすることに注意してください。それが機能要件の潜在的な問題を形成するかどうかは不明です。

+0

任意で、信頼できるJSON-P APIを呼び出します。結果が得られれば、URLに達しました。結果を破棄します。結果が得られない場合は、ファイアウォールがあなたをブロックしたか、呼び出されたAPIがダウンしています(信頼性の高いAPIを選択した場合、非常にスリムなチャンス) – xbonez

+0

@xbonez:「指定されたURL」は公開されていないと思いますJSONP APIを持っているか、 'Access-Control-Allow-Origin:*'を持っていなければ、OPはこの質問をしなかったでしょう。 – BalusC

+0

ああ、本当です。質問をもう一度読んでください。私の最初の解釈は、単にクライアントがインターネットにアクセスできるかどうかをテストしたいという解釈でした。その場合、ANY APIで十分です。 – xbonez

0

URLのHEAD要求を行うことができます。それはHTTPヘッダーを返しますが、コンテンツは返しません。

ブラウザでJavascriptを使用している場合は、XMLHTTPRequestオブジェクトを使用するだけで十分です(もちろん、同じドメインにあるため、URLを要求するアクセス権があります)。

0

要求されたページにAccess-Control-Allow-Originヘッダーがある場合のみ。

この機能は、クロスドメインの原点をドキュメントに追加します。

ところで、最新のブラウザでしか検索できず、リクエストされたページにアクセスする必要があります(このヘッダーを設定するには)。

http://www.w3.org/TR/cors/

関連する問題