2016-06-16 13 views
0

私は音声認識を使用するWebアプリケーションを構築しています& JS(jQuery for AJAX)で構築されたHTMLページを介して、さまざまなデータを処理/表示するテキスト読み上げ/ HTML/CSS)。このWebアプリケーションは、ローカルネットワークにないHTTPSサーバー上でホストされています。クロスドメインAJAX(Philips Hue Lights)

私は、セットアップおよび設定されているだけで、ローカルネットワークを介して制御することができるRESTfulなAPIが装備されている「フィリップスHUEライト」と呼ばれるいくつかのスマートライト(ローカルネットワークの見えない外。)

I自社製品に含まれているCLIPデバッガ/ APIツール(local ip) "http:////debug/clip.html"にアクセスして、デバイスにコマンドを送信することができます。私はライトにコマンドを発行するデバイスである "Philip HUE Bridge"にHTTPコマンドを送ることができます。上記のローカルホストされたURLにアクセスするAPIツール(GET、 "PUT、POST、DELETE")を使用すると、すべてのコマンドが機能します。

しかし、jQuery AJAXリクエストを "GET"/"PUT"私のHTTPSサーバーでホストされている私のWebアプリケーションは、コマンドが失敗します。 "Access-Control-Allow-Origin:*"を使ってAJAX関数のヘッダープロパティを設定しようとしましたが、 "crossDomain" "json"と "jsonp"の両方に "dataType"プロパティを設定しようとしましたが、それでも機能しません。

私はHTTPS Webアプリケーションに、 "HUE Bridge"が接続されているローカルネットワーク。私が同じネットワーク上のコンピュータを使用していることを考えれば、これはうまくいくと思いました...

私はインターネット上で多くの他の投稿/情報を読んだことがありますが、決定的な答えを見つけることはできません。私はあなたに熟練した人たちのいくつかを尋ねたいと思っていました。

私が上で説明したシナリオを考えても、私は可能なことを達成しようとしていますか?それとも別の方法でこれを達成しなければなりませんか?

ご協力いただきありがとうございます。ありがとう。

+0

あなたは 'Access-Control-Allow-Origin:*'ヘッダをどこで設定しましたか?あなたのAPI側でそれを設定し、それが動作しています。第二に、ローカルファイル上でAJAXリクエストを実行することはできません。ローカルホスト上(または任意のホスト上)にある必要があります。 – skobaljic

+1

_remote_サーバーは、原点を越えた​​アクセスを許可する必要があります。 – CBroe

+0

色合いウェブサイトとIFTTTウェブチャンネルの両方が公衆インターネットからの色相ライトに影響する可能性があるので、明らかに可能です。 –

答えて

0

"混在したコンテンツ"セキュリティの問題が発生しています。

セキュリティで保護されたURL(https)でページをホストする場合、基本的に、混在したコンテンツエラーが発生することなく安全でない(http)リソースにアクセスすることはできません。 このエラーは、ブラウザのコンソール(通常はF12でアクセス)に表示されます.Web開発中に何かが動作していない場合は、常にコンソールにエラーがないかチェックします。

これをハックすると、一時的にセキュリティを無効にし、安全でない要求を許可することができます。たとえば、Chromeはアドレスバーにシールドを表示します。このシールドをクリックすると、警告が一時的に無効になります。 Firefoxは、アドレスバーのロックアイコンにクリック可能な警告オーバーレイを表示します。

これは開発の一時的な回避策であるかもしれませんが、ですが、ユーザーがセキュリティを無効にすることは期待できません。

解決策は、Content-Security-Policyヘッダーを送信することです。次のヘッダーは、へのXMLHttpRequestsを可能にしなければならないhttp://content-security-policy.com/からの文書に基づいて、任意のリソース:

コンテンツセキュリティポリシー:接続-SRC私は変更するための十分なコントロールを持っていないので*

私のファイルがホストされているウェブサーバ上のヘッダ私はこれをテストできませんでした。

このメソッドを使用する前に、このヘッダーを送信する際のセキュリティの影響を理解しておいてください。

関連する問題