質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

2回答

13728閲覧

chromeでajaxを実行すると"Refused to load the script"とエラーが出る

thinpo

総合スコア12

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2018/09/18 14:08

discordチャット上で特定のコメントを検出するプログラムです
chromeのconsoleで下記のコードを含んだプログラムを実行すると、
Refused to load the script 'https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js?d=1537198714769'
because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-eval' 'unsafe-inline'
https://cdn.discordapp.com/animations/
https://www.gstatic.com/recaptcha/
https://www.google.com/recaptcha/
https://js.stripe.com
https://js.braintreegateway.com https://assets.braintreegateway.com
https://www.paypalobjects.com
https://checkout.paypal.com
'nonce-MTkwLDczLDE4NCwyMTMsMTg2LDE2OCwyNDYsMTE1'".
というエラーが出ました。どうやらgoogleさんの定めるルールに違反してるっぽいのは分かったのですが、何を書き加えていいのかわかりません。対処法を教えていただけないでしょうか?
※表示を反映の部分は片方しか実行せずもう片方はコメントアウトしていました

javascript

1//-------------------------検出動作の見た目部分--------------------------------// 2jqload = function() { 3 msgtxt = $(".message-text").last().text(); 4 try { 5 $("#detect").remove(); 6 } catch (ex) {} 7 $("body").append('<div id="detect">Wait Message<span>...</span></div>'); 8 $("#detect").css({ 9 "position": "absolute", 10 "bottom": 0, 11 "right": 0, 12 "padding": 10, 13 "background": "#fff", 14 "color": "#000" 15 }); 16 waitmsg(); 17} 18//オブジェクトを生成 19s = document.createElement("script"); 20//要素を追加 21s.setAttribute("onload", "jqload()"); 22s.src = "https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js?d=" + (new Date()).getTime(); 23//表示を反映-1 24document.head.appendChild(s); 25//表示を反映-2 26var stag = document.getElementsByTagName( 'script' )[ 0 ]; 27stag.parentNode.insertBefore( s, stag );

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

Contents Security PolicyはGoogleが定めたルールということではありません。
https://developer.mozilla.org/ja/docs/Web/HTTP/CSP
https://qiita.com/o_Ozzzzk/items/c505b7dd20707eb4ee08

今回thinpoさんが行われているように、自由にJavaScriptが実行されてしまうとセキュリティに問題があるため、事前に(元サイトの)開発者が許可した場所にあるスクリプトしか動かさないようにする仕組みです。

コンソールでなければ可能ということではなく、Discord側が許可している場所にあるスクリプトであれば実行可能ということになります。

投稿2018/09/18 15:02

Takumiboo

総合スコア2534

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

thinpo

2018/09/18 15:31

なるほど、discord側との問題なのですね。 たしかに数か月前試したときはこんなエラー出てなかったのですごく不思議でした。アップデートなどでそうなったのでしょうね 勉強になりました、、、
guest

0

https://discordapp.com/ここですよね。

このサイトが以下のようなコンテンツセキュリティポリシーを設定しています。

content-security-policy: report-uri https://sentry.io/api/1237039/security/?sentry_key=1f92f82be47c47fb83350676d24d984a; default-src 'self'; script-src 'self' https://www.googletagmanager.com https://www.google-analytics.com https://www.gstatic.com/recaptcha/ https://www.google.com/recaptcha/ 'unsafe-inline' 'nonce-MTA1LDE4NCwxNDgsODQsMjQ0LDE0MywxODAsNTQ='; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; img-src 'self' https://www.google-analytics.com https://cdn.discordapp.com; font-src 'self' https://fonts.gstatic.com; connect-src 'self' https://discordapp.com https://api.greenhouse.io https://api.github.com https://sentry.io ws://127.0.0.1:* http://127.0.0.1:*; media-src 'self'; frame-src 'self' https://www.google.com/recaptcha/ https://www.youtube.com/;

好き勝手にscriptなんて実行させないよっていうセキュリティ設定です。
コンソールからはどうにもならないのであきらめてください。

投稿2018/09/18 14:39

spookybird

総合スコア1803

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

thinpo

2018/09/18 14:55

ありがとうございます。 つまりコンソールからでなければできる可能性はあるということですね
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問