C# Azure+;react js pdf+;Microsoft.AspNetCore.NodeServices.HostingModels.NodeInvocationException
我有一个asp.net core 2.0解决方案,使用react.js作为前端。不久前,我将我的应用程序发布到Azure(PaaS)。在我尝试生成pdf之前,一切都正常 在我的本地机器上,它可以工作,但在Azure应用程序服务上,我遇到了以下异常: Microsoft.AspNetCore.NodeServices.HostingModels.NodeInvocationException,“消息”:“尝试连接到节点在60000ms后超时 我已经试着设定好了C# Azure+;react js pdf+;Microsoft.AspNetCore.NodeServices.HostingModels.NodeInvocationException,c#,asp.net,node.js,azure,pdf,C#,Asp.net,Node.js,Azure,Pdf,我有一个asp.net core 2.0解决方案,使用react.js作为前端。不久前,我将我的应用程序发布到Azure(PaaS)。在我尝试生成pdf之前,一切都正常 在我的本地机器上,它可以工作,但在Azure应用程序服务上,我遇到了以下异常: Microsoft.AspNetCore.NodeServices.HostingModels.NodeInvocationException,“消息”:“尝试连接到节点在60000ms后超时 我已经试着设定好了 “引擎”:{“节点”:版本}或 网站
“引擎”:{“节点”:版本}
或
网站\u节点\u默认\u版本
(在azure变量上)
前端代码:
private generatePdf() {
let htmlContent = document.getElementById("dataToPrint");
GetDetailsPdf(this.props.prop1, htmlContent.innerHTML).then((data: Blob) => {
// Create of hidden anchor for start download in browser
var a: HTMLAnchorElement = document.createElement("a");
a.hidden = true;
document.body.appendChild(a);
var url = window.URL.createObjectURL(data);
a.href = url;
a.download = `${this.props.prop1}_${this.props.prop2}.pdf`;
a.click();
window.URL.revokeObjectURL(url);
});
}
后端:
public async Task<IActionResult> ExportPdf(
Guid id,
[FromBody] JObject jObject,
[FromServices] INodeServices nodeServices,
[FromServices] IHtmlToPdfConverter converter)
{
var htmlJObject = jObject.First;
var htmlContent = htmlJObject.First.Value<string>();
var pdfFile = await converter.GetPdfFile(htmlContent);
return File(pdfFile, "application/pdf", $"MyPDf_{id}.pdf");
}
公共异步任务导出PDF(
Guid id,
[FromBody]JObject JObject,
[FromServices]INodeServices节点服务,
[FromServices]IHTMLTOPDFC转换器)
{
var htmlJObject=jObject.First;
var htmlContent=htmlJObject.First.Value();
var pdfFile=await converter.GetPdfFile(htmlContent);
返回文件(pdfFile,“application/pdf”,“MyPDf{id}.pdf”);
}
转换器刚刚呼叫的地方
nodeServices.InvokeAsync<byte[]>("./pdf", htmlTemplate);
nodeServices.InvokeAsync(“./pdf”,htmlTemplate);
请同时显示node.js代码并告诉我们您将其放置在何处。您是否在启动
类的配置服务
方法中?请同时显示node.js代码并告诉我们您将其放置在何处。您是否在启动
类的配置服务
方法中?