Closed u-ecmaker closed 1 month ago
chat GPT 4o を使ったら一瞬で解決した。 3.5とは偉い違いだ。2-3段階進んだ気がする。
上の赤ワーニングは解決したが、下の問題は残った。
タグマネージャーの某? とか出てきたので一旦ここで止めてマージする。
次の問題です
Content Security Policy of your site blocks the use of 'eval' in JavaScript`
The Content Security Policy (CSP) prevents the evaluation of arbitrary strings as JavaScript to make it more difficult for an attacker to inject unathorized code on your site.
To solve this issue, avoid using eval(), new Function(), setTimeout([string], ...) and setInterval([string], ...) for evaluating strings.
If you absolutely must: you can enable string evaluation by adding unsafe-eval as an allowed source in a script-src directive.
⚠️ Allowing string evaluation comes at the risk of inline script injection.
1 件のディレクティブ
ソースの場所 ディレクティブ ステータス
script-src ブロック中
詳細: コンテンツ セキュリティ ポリシー - Eval
このエラーは、Content Security Policy (CSP) により、evalやnew Function()などの文字列評価がブロックされていることを示しています。CSPは、サイトに不正なコードが注入されるリスクを減らすために、これらの操作を制限しています。 対処方針
このエラーは、Content Security Policy (CSP) によってevalやnew Function()などの文字列評価がブロックされていることを示しています。CSPは、サイトに不正なコードが注入されるリスクを減らすために、これらの操作を制限しています。 対処方針 evalやnew Function()の使用を避ける: これらの関数を使用している箇所を特定し、代替手段を検討してください。通常、これらの関数は必要ない場合が多く、他の方法で同じ機能を実現できることが多いです。
// evalの使用例
// const result = eval('2 + 2');
// 代替手段 const result = 2 + 2;
setTimeoutの代替
// setTimeoutの文字列引数の使用例 // setTimeout('console.log("Hello")', 1000);
// 代替手段 setTimeout(() => { console.log("Hello"); }, 1000);
注意点
セキュリティリスク: unsafe-evalをCSPに追加するのは、セキュリティリスクを伴います。可能な限り、コードのリファクタリングを行い、evalやnew Function()の使用を避けるようにしてください。
このようにして、CSPの制限を回避しつつ、セキュリティを維持することができます。詳細については、Google DevelopersのCSPガイドを参照してください。
---
本家noblog様でも発生していた。
同様に以下全てで発生していた。。
- 本家 noblog様
- JJKasperさんのnotion-blog
- かなるさんのnotion-blog
- astro-notion-blog
発生するのが一般的らしい( ) ということで、ここで止める。
![image](https://github.com/user-attachments/assets/3d79b27d-2f15-41e1-afa9-76ed22635223)
これか?
一旦、noblog様の最新 11sep2023 main を持ってきて、エラーシュート。
最新のnoblog様は持ってこずに、過去のnoblog様ベースのそのままエラーシュート。
まだ一つだけ消えないので、考えられる処置を講じてみる
基本的にはできた
slugの404が残った
GET main-4da6185358dbe7bf.js:1
https://blog.ec-maker.com/_next/data/5es-RMvshMZBpDtlX3sya/posts/%5Bslug%5D.json?slug=%5Bslug%5D 404 (Not Found)
slugの404は解決。 #89 が原因。
エラーの出るブロックへの対処
Youtubeは解決 残りはadBlockによるものだと分かった。シークレットモードではerrorにならない。
previewページを参照してみる。→ #90
すべてのブロックの確認。
切り出した→ #90
本家Notionの埋め込みでもエラーとなるのでしょうがない。 おそらく提供されているembedコードに間違いがある。
対策のしようが無いのでクローズ。
previewページを参照してみた。→ #90
https://blog.ec-maker.com/posts/Notion-Block-Preview