Как исправить ERR_INVALID_URL_SCHEME при инициализации C# в WebAssembly в node.js?C#

Место общения программистов C#
Ответить
Anonymous
 Как исправить ERR_INVALID_URL_SCHEME при инициализации C# в WebAssembly в node.js?

Сообщение Anonymous »

Хотя мне удалось запустить свой код C# в браузере как WebAssembly, я получаю подобные ошибки при попытке запустить любые (vitest) модульные тесты, которые загружают модуль, инициализирующий .NET:

Код: Выделить всё

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Unhandled Rejection ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
TypeError: The URL must be of scheme file
❯ Object.fileURLToPath node:internal/url:1393:11
❯ src/_framework/dotnet.native.js:8:1475

❯ processTicksAndRejections node:internal/process/task_queues:95:5

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
Serialized Error: { code: 'ERR_INVALID_URL_SCHEME' }
This error originated in "src/[...].test.ts" test file. It doesn't mean the error was thrown inside the file itself, but while it was running.
Судя по журналам консоли, он запускается стандартным оператором инициализации:

Код: Выделить всё

import { dotnet } from '_framework/dotnet.js';
...
setTimeout(async () => {
console.log('*** Initializing .NET');
try {
const { setModuleImports, getAssemblyExports, getConfig, runMain }
= await dotnet.withApplicationArguments('start').create();
...
Важно также иметь возможность использовать код C# в модульных тестах, как это исправить?
Примечание. У меня есть блок catch, который должен был перехватывать любые исключения, но мой console.error не отображается. А код, вызывающий ошибку, минимизирован, поэтому я не могу его прочитать.

Подробнее здесь: https://stackoverflow.com/questions/798 ... mbly-in-no
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»