wasm / do tnet Атрибут целостности недействителен для моего приложения Blazor на страницах Github - PullRequest
0 голосов
/ 02 мая 2020

См. Ошибку на моем веб-сайте здесь

Я встроил приложение Blazor в свой сайт Jekyll. Он работает идеально локально, но когда я публикую sh на страницах github, я получаю эту ошибку:

Failed to find a valid digest in the 'integrity' attribute for resource 'https://chrisevans9629.github.io/blazor/xt/_framework/wasm/dotnet.3.2.0-rc1.20222.2.js' with computed SHA-256 integrity 'yVt8FYsTQDifOGsifIkmEXwe+7ML0jZ1dMi2xluiDXQ='. The resource has been blocked.

Это то, что, я думаю, генерируется Blazor при запуске страницы. Вот как выглядит моя страница, запускается Blazor:

<script src="js/index.js"></script>
<app>Loading...</app>
Built with <3 using Blazor
<script src="_framework/blazor.webassembly.js"></script>

Вот как выглядит страница на страницах github:


<script src="js/index.js"></script>

<app>Loading...</app>
<p>Built with &lt;3 using Blazor
<script src="_framework/blazor.webassembly.js"></script></p>        

<script type="text/javascript">var Module; window.__wasmmodulecallback__(); delete window.__wasmmodulecallback__;</script><script src="_framework/wasm/dotnet.3.2.0-rc1.20222.2.js" defer="" integrity="sha256-iZCHkFXJWYNxCUFwhj+4oqR4fkEJc5YGjfTTvdIuX84=" crossorigin="anonymous"></script></body>

Почему происходит эта ошибка и как я могу ее исправить это? Я думал о создании сценария, который удалял бы атрибут целостности, но я не думаю, что это было бы хорошим решением.

Ответы [ 2 ]

1 голос
/ 07 мая 2020

Похоже, что sh, сгенерированный внутри ServiceWorkerAssetsManifest для всех файлов и на стороне клиента, не совпадает. Похоже, ServiceWorkerAssetsManifest больше не генерирует ha sh при изменении файла, особенно файлов stati c.

0 голосов
/ 08 мая 2020

Я нашел ответ здесь

Причина

Поскольку я использую страницы GitHub для размещения своего приложения для блейзоров, он использует git для pu sh up код. Git по умолчанию будет пытаться нормализовать окончания строк при фиксации кода, что приводило к сбою целостности приложения Blazor из-за изменения файлов.

Решение

Чтобы это исправить, я добавил файл .gitattributes в папку Blazor с * binary в качестве содержимого.

Это говорит git обрабатывать все файлы как двоичные и, следовательно, не нормализовать окончания строк. После того, как я это сделал, мне пришлось удалить папку _framework в моем приложении Blazor и восстановить ее. После этого приложение Blazor сработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...