2016-04-06 9 views
0

私はハイブリッドアプリ用のウェブスクレーパーを書いています。私は角度を使って書きました。私はビデオをフェッチするためにウェブサイトにログインする必要があります。私はSafari上でログインすることができますが、ChromeではAccess Control-Allow-Originエラーが表示されます。私が掻き取ろうとしているサイトがそのヘッダーを提供しないため、これを変更することはできません。 Chromeでウェブセキュリティを無効にしようとしましたが、それでも機能しません。アプリはSafariでうまく動作しますが、Ionicでパッケージ化するとウェブサイトにログインせず、エラーコードもスローされません。これは私のhtmlページの先頭に次のようになります。POSTリクエストはSafariで動作しますが、ChromeとIonicでは動作しません

<meta charset="utf-8"> 
    <!--<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'">--> 
    <meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-eval' 'unsafe-inline'"> 
    <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width"> 
    <script src="lib/ionic/js/ionic.bundle.js"></script> 
    <script src="cordova.js"></script> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script> 
    <!--don't need angular script because already loaded somewhere else 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.3/angular.min.js"></script>--> 
    <script src="webscrape.js"></script> 

私のPOSTリクエストがJSファイルに、次のようになります。

login: function(token) { 
    var request = { 
     method: 'POST', 
     url: 'http://bslsignbank.ucl.ac.uk/accounts/login', 
     headers: { 
     'Content-Type': 'application/x-www-form-urlencoded' 
     }, 
     data: 'csrfmiddlewaretoken=' + token + '&email=stackoverflow%40sto.ac.uk&password=dontworry&next=%2F' 
    }; 
    return $http(request); 

POSTリクエストは、任意のCSRFトークンとSafariで動作するようです今のところ。

答えて

0

実行(ウィンドウキー+ r)ウィンドウで次のコマンドを使用してChromeを開きます。それはchromebrowserを開き、そこからAJAX要求を行う試みます。

chrome.exe --user-data-dir="C:/Chrome dev session" --disable-web-security 

コルドバCLI-5.2では、あなたは成功したアンドロイドでAJAXリクエストを作るためにホワイトリストプラグインを実装する必要があります。

+0

を試してみてくださいをplugingホワイトリストを実装するために、このlinkをチェックしてください。既にホワイトリストプラグインがあります。 configを ''を含むように変更しましたが、それでも動作しません。 – Inalek

+0

以下のコマンドを端末から使用する:open/Applications/Google \ Chrome.app --args --user-data-dir = "/ var/tmp/Chrome devセッション" --disable-web-security – Krunal

+0

ホワイトリストプラグイン? – Krunal

0

あなたのconfig.xmlの行の下に追加して、私はMac上でだが、私は同等のコマンドおよびクロムはまだ、同じエラーが動作しない試みた

<gap:plugin name="cordova-plugin-whitelist" source="npm" /> 
<access origin="*" /> 
<allow-intent href="*" /> 
<allow-navigation href="*" /> 
+0

何らかの理由で、最初の行でエラーが発生しています。 – Inalek

+0

クラウドビルドまたはローカルビルドを使用していますか? – Krunal

+0

私は確かにすべてのローカルです。 – Inalek

関連する問題