2017-10-18 7 views
0

さまざまなWebサイト(SeleniumとPythonを使用)にいくつかのJSコードを注入して、ローカルWebサーバーにPOST要求を送信しています。いくつかのウェブサイトでは正常に動作します。しかし、ほとんどの場合、私は要求を取得しません。コンテンツセキュリティポリシーが原因であると判断しました。例えばAjax Content Security Policyディレクティブを克服する方法は?

、私はgithub.comにChromeでコンソールを使用してコードを実行しようとすると、私は次のエラーを取得する:私は

function sendData() { 
      var request = new XMLHttpRequest(); 
      request.open('POST', 'http://10.50.50.127:7777', false); 
      request.send("test"); 
     } 

Refused to connect to ' http://10.50.50.127:7777/ ' because it violates the following Content Security Policy directive: "connect-src 'self' uploads.github.com status.github.com collector.githubapp.com api.github.com www.google-analytics.com ...".

私のコードは次のようになりますローカルプロキシサーバーを使用し、 "/ test"のような相対パスにデータを送信するという、可能な解決策を見つけました。しかし、最初からプロキシサーバーを作成するのはかなり複雑です。

このコンテンツセキュリティポリシーを克服するにはどうすればよいですか?

答えて

0

両側を制御している場合は使用できます。

https://easyxdm.net/wp/

よろしく

+0

悲しいことに、私はバックエンドを制御できません。 –

+0

あなたのサーバーにajaxコールを発信していますか? –

+0

ウェブサイトは私のものではないので、私はバックエンド側へのアクセス権がありません –

0

私はそれを考え出しました!すべてのセキュリティチェックを無効にすることができます。

chrome_options = webdriver.ChromeOptions() 
chrome_options.add_argument('--disable-web-security') 
chrome_options.add_argument('--allow-running-insecure-content') 
browser = webdriver.Chrome(chrome_options=chrome_options) 
関連する問題