【问题标题】:aspnetcore with angular error NodeInvocationException: The Node invocation timed out after 60000ms带有角度错误 NodeInvocationException 的 aspnetcore:节点调用在 60000 毫秒后超时
【发布时间】:2017-07-19 15:41:22
【问题描述】:

我正在使用yo generator-aspnetcore-spa 一旦我运行应用程序,我就遇到了问题

处理请求时发生未处理的异常。

NodeInvocationException:节点调用在 60000 毫秒后超时。 您可以通过设置 NodeServicesOptions 上的 InvocationTimeoutMilliseconds 属性。

第一个调试步骤是确保您的 Node.js 功能 总是调用提供的回调(或抛出异常 同步),即使遇到错误。否则,.NET 代码无法知道它是完成还是失败。 Microsoft.AspNetCore.NodeServices.HostingModels.OutOfProcessNodeInstance+d__13.MoveNext()

NodeInvocationException:节点调用在 60000 毫秒后超时。 您可以通过设置 NodeServicesOptions 上的 InvocationTimeoutMilliseconds 属性。这 第一个调试步骤是确保您的 Node.js 功能始终 调用提供的回调(或同步抛出异常), 即使遇到错误。否则,.NET 代码没有办法 知道它已经完成或失败了。

这条线是红色的

AspNetCore._Views_Home_Index_cshtml+d__31.MoveNext() 在 索引.cshtml + ViewData["Title"] = "主页";

这就是我的 package.json 的样子

{
  "name": "WebApplicationBasic",
  "version": "0.0.0",
  "dependencies": {
    "@angular/animations": "^4.3.0",
    "@angular/common": "^4.3.0",
    "@angular/compiler": "^4.3.0",
    "@angular/core": "^4.3.0",
    "@angular/forms": "^4.3.0",
    "@angular/http": "^4.3.0",
    "@angular/platform-browser": "^4.3.0",
    "@angular/platform-browser-dynamic": "^4.3.0",
    "@angular/platform-server": "^4.3.0",
    "@angular/router": "^4.3.0",
    "@types/node": "^7.0.38",
    "angular2-template-loader": "^0.6.2",
    "aspnet-prerendering": "^2.0.6",
    "aspnet-webpack": "^1.0.29",
    "awesome-typescript-loader": "^3.2.1",
    "bootstrap": "^3.3.7",
    "css": "^2.2.1",
    "css-loader": "^0.28.4",
    "es6-shim": "^0.35.3",
    "event-source-polyfill": "0.0.9",
    "expose-loader": "^0.7.3",
    "extract-text-webpack-plugin": "^2.1.2",
    "file-loader": "^0.11.2",
    "html-loader": "^0.4.5",
    "isomorphic-fetch": "^2.2.1",
    "jquery": "^3.2.1",
    "json-loader": "^0.5.4",
    "ng-snotify": "^2.0.3",
    "ngx-cookie": "^1.0.0",
    "preboot": "^4.5.2",
    "raw-loader": "^0.5.1",
    "reflect-metadata": "^0.1.10",
    "rxjs": "^5.4.2",
    "style-loader": "^0.17.0",
    "to-string-loader": "^1.1.5",
    "typescript": "^2.4.1",
    "url-loader": "^0.5.9",
    "webpack": "^2.7.0",
    "webpack-hot-middleware": "^2.18.2",
    "webpack-merge": "^4.1.0",
    "zone.js": "^0.8.14"
  }
}

我的应用程序运行良好,但我不知道这个问题的原因是什么

【问题讨论】:

    标签: angular webpack asp.net-core angular-universal aspnetcoretemplatepack


    【解决方案1】:

    我们在 Azure 中托管我们的网站,我的解决方案是将此配置键/值添加到应用程序设置中。

    键:WEBSITE_NODE_DEFAULT_VERSION
    值:6.9.1

    我想你也可以将它添加到你的 appsetting.json 或 web.config 中。

    【讨论】:

      【解决方案2】:

      问题出在 aspnet-prerendering 模块中 在 View>>Home>>Index.csHtml 中看起来像这样

      <app asp-prerender-module="ClientApp/dist/main-server">Loading...</app>
      

      然后当我删除它时,应用程序运行正常

      <app>Loading...</app>
      

      但是这当然没有服务器端渲染 所以当我完成应用程序的开发后,我在项目的根目录中编写了这个命令

      webpack --config webpack.config.vendor.js
      webpack
      

      并恢复了

      <app asp-prerender-module="ClientApp/dist/main-server">Loading...</app>
      

      它应该是这样工作的:)

      【讨论】:

      • 我有同样的问题,但这并不能解决问题。问题是当我的回购被克隆时,我在另一台计算机上收到此错误。在创建项目的计算机上它工作正常。
      • 我们需要在哪里添加这些 webpack 命令,任何特定文件?
      【解决方案3】:

      我遇到了同样的问题。这可能是节点本地版本的问题。

      我将本地 nodejs 版本设置为 5.4.3 并且能够让应用程序运行,请尝试在控制台/终端上使用它检查您的节点版本:

      node -v
      

      我认为删除预渲染标签然后运行 ​​webpack 可能仍会将该模块从服务器端预渲染中排除,因此希望更新的节点版本可以帮助在不更改代码的情况下按预期运行应用程序。

      这里也有类似的问题: NodeInvocationException: Attempt to connect to Node timed out

      【讨论】:

        【解决方案4】:

        不完全是这个问题的答案,但我遇到了同样的问题并来到这里。

        我安装了 Windows HPC 包,这意味着我的 PATH 上的 node.exe 是 Windows HPC node command 而不是第三方 NodeJS node.exe

        这意味着我在运行 HPC 节点命令而不是使用 NodeJS 运行 webpack 时遇到了超时。为了解决这个问题,我从 PATH 环境变量中删除了路径并重新启动了 Visual Studio。我本可以重新排序路径,或重命名其中一个 node.exe,但我不使用命令行中的 HPC 命令,仅使用代码。

        NodeJS中的冲突讨论https://github.com/nodejs/node-v0.x-archive/issues/7773

        【讨论】:

          猜你喜欢
          • 2018-03-28
          • 2020-01-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-07-16
          • 1970-01-01
          • 1970-01-01
          • 2022-07-25
          相关资源
          最近更新 更多