Развертывание основных JavaScript-сервисов ASP.NET на отказавшем узле Azure

У меня установлена ​​Visual Studio 2017 R3 и биты выпуска ASP.NET Core 2.0. Когда я создаю новое веб-приложение с реакцией, оно работает локально, и при развертывании в Azure нет проблем (как и ожидалось). Я хочу добавить узел к смеси и статью, написанную для ядра 2.0

https://docs.microsoft.com/en-us/aspnet/core/client-side/spa-services

говорит:

Примечание. При развертывании на веб-сайте Azure вам не нужно ничего делать здесь - Node.js установлен и доступен в серверных средах.

Я следую инструкциям в этой статье о том, как добавить nodeservices, и это работает локально. Мои шаги:

https://blogs.msdn.microsoft.com/webdev/2017/02/14/building-single-page-applications-on-asp-net-core-with-javascriptservices/

добавить services.AddNodeServices(); создать О контроллере и посмотреть положить myNodeModule.js

При развертывании в Azure появляется ошибка, когда я просматриваю

http://webapplication220170908032616.azurewebsites.net/home/about

Я добавил переменную среды ASPNETCORE_ENVIRONMENT и установил для нее значение Production. Я подтвердил это, добавив помощник по тегам на другую страницу.

Я вижу ошибку:

Произошла ошибка при обработке вашего запроса. Идентификатор запроса: 0HL7N1AN8GM1N:00000002

Я давно не пользовался лазурью, поэтому немного ржавый.

2 ответа

У меня была эта проблема, и я обнаружил, что это связано с тем, что версия Node, установленная по умолчанию, была v4.8.2 (текущая стабильная версия для Ubuntu 16.04). Я запустил следующий скрипт для установки Node 8.x:

cd ~
apt-get update && apt-get install -y gnupg
curl -sL https://deb.nodesource.com/setup_8.x -o nodesource_setup.sh
# You might want to inspect nodesource_setup.sh before blindly running it
# vi nodesource_setup.sh
bash nodesource_setup.sh
apt-get install -y nodejs

(Предоставлено DigitalOcean: https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-16-04)

Теперь мой nodejs v8.11.2, и мое основное приложение dotnet может работать с NodeServices.

По моему опыту, развертывания в Azure для.NET Core завершились неудачно, когда в файле.csproj не был указан правильный идентификатор времени выполнения.

Я использую следующее в своих проектах и ​​перестал видеть ошибки.

  <PropertyGroup>
    <RuntimeIdentifiers>win7-x64</RuntimeIdentifiers>
  </PropertyGroup>
Другие вопросы по тегам