2016-10-19 8 views
0

$ http.postをIFTTTメーカーチャネルに実行しようとしているときに問題が発生しています。以下は、私はPOSTを実行するために使用していたコードです:

$http.post(
    'https://maker.ifttt.com/trigger/{my-event}/with/key/{my-key}', 
    {value1:"hello",value2:"goodbye"} 
).then(
    function successCallback(response) { 
     console.log(response); 
    }, 
    function errorCallback(response) { 
     console.log("error: ",response); 
    }); 

私が得る応答は以下の通りです:

XMLHttpRequest cannot load https://maker.ifttt.com/trigger/{my-event}/with/key/{my-key}. 
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8100' is therefore not allowed access. 

私はコルドバ-ホワイトリストプラグインを持っているとするAccess-Control-Originを追加するさまざまなソリューションを試してみましたそれでも同様の応答が得られます。

+0

であるあなたは、ここで

クロームそれらを得ることができますか? – Akis

+0

私はそう信じません。私はいくつかのブラウザといくつかのマシンで試してみました。それでも同じエラー。 – zsoflin

+0

CORSプラグインを使用する回避策があります。https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi – Akis

答えて

3

CORSの問題はブラウザにのみ存在します。この場合は、ionic serveを使用してのみ存在します。

実際 デバイスにアプリを展開、あなたは ないはCORSエラーが発生します。

CORSは、イオンと開発モード でアプリケーションを実行しているが、サーブだけの問題ではなく、 コルドバでパッケージ化モバイルアプリとして実行している場合、単純なオプションは、ちょうど地元 開発のための完全CORSを無効にすることですので、 。 Chromeの場合、 「Allow-Control-Allow-Origin:*」というプラグインがあり、CORSを無効にすることができます。

それでも、コードのようにCORSを処理したい場合は、そのここhttp://blog.ionic.io/handling-cors-issues-in-ionic/

念頭に置いて、それはより速く、ちょうどのためのCORSプラグインを取得するには良い方法だと持っていることについての詳細情報を取得することができますモザまたはクロム。 https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi

のMozilla - - これは、ブラウザのエラーhttps://addons.mozilla.org/en-US/firefox/addon/cors-everywhere/

関連する問題