我正在使用 ASP.NET Core 3.1 在我的 REST API 的端点之一中使用 IronPDF 库。该库成功地将我的自定义 HTML 转换为 PDF 并返回一个文件。如果我向同一个端点发送另一个请求,代码执行会到达我启用日志记录的位置,但不会进一步,并且请求在 Chrome 中被标记为“(待处理)”。如果我继续发送请求,则该路由不再运行代码,而其他路由则完全正常。我尝试过渲染 url 和自定义 html,但在第一次请求后都不起作用。我不确定是我的代码失败、IronPDF 的限制还是 IronPDF 的问题导致了问题。任何为我指明正确方向的帮助表示赞赏。
操作系统:macOS Big Sur 11.4
目标框架:netcoreapp3.1
应用设置.json
{...
"IronPdf.LicenseKey": "IRONPDF.COMPANY......"
...}
控制器.cs
[HttpGet]
[Route("report")]
public IActionResult GetReport(){
IronPdf.Logging.Logger.EnableDebugging = true;
IronPdf.Logging.Logger.LogFilePath = "Default.log";
IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;
var render = new IronPdf.ChromePdfRenderer();
var doc = render.RenderHtmlAsPdf("<div>Test</div>");
return File(doc.Stream.ToArray(), "application/pdf");
}
控制台日志片段
11:48:12 (0x70000ede0000): Loaded frame 'https://ironsoftwarescheme.com/'
11:48:12 (0x70000ede0000): Executing dev tools method 'Emulation.setEmulatedMedia' for browser 1
11:48:12 (0x70000ede0000): Received dev tools message on browser 1: '{"id":1,"result":{}}' (size: 20)
11:48:12 (0x70000ede0000): Finished dev tools method on browser 1 (message ID: 1)
11:48:12 (0x70000ede0000): Sending DOM-visit process message for browser 1 (job ID: 0)
11:48:12 (0x115f26e00): Message received from process 0
11:48:12 (0x115f26e00): Visiting DOM of 'https://ironsoftwarescheme.com/'
11:48:12 (0x115f26e00): DOM reported document title of
11:48:12 (0x115f26e00): Finished HTML visit, invoking callback
11:48:12 (0x115f26e00): DOM-visit finished for browser 1
11:48:12 (0x115f26e00): DOM-visit generated base-64 string 'AQAAAGgAAAAAAAAAAgAAAEQAAAAQAAAAAAAAAAAAAAABAAAAOAAAAAEAAAANAAAAZAAAAG8AAABjAAAAdQAAAG0AAABlAAAAbgAAAHQAAAB0AAAAaQAAAHQAAABsAAAAZQAAAAEAAAAEAAAAAQAAAAAAAAA='
11:48:12 (0x115f26e00): Sending process message from render process to browser process
11:48:12 (0x115f26e00): Successfully sent message to browser process
11:48:12 (0x70000ede0000): Browser process received message: 'OnDomVisited'
11:48:12 (0x70000ede0000): Received message from render process with values 'AQAAAGgAAAAAAAAAAgAAAEQAAAAQAAAAAAAAAAAAAAABAAAAOAAAAAEAAAANAAAAZAAAAG8AAABjAAAAdQAAAG0AAABlAAAAbgAAAHQAAAB0AAAAaQAAAHQAAABsAAAAZQAAAAEAAAAEAAAAAQAAAAAAAAA=' (156)
11:48:12 (0x70000ede0000): Printing from browser to '/var/tmp/pdfoZGBeL'
11:48:12 (0x70000ede0000): Received browser print callback for path '/var/tmp/pdfoZGBeL' (1)
11:48:12 (0x70000ede0000): Print finished for browser 1(success: 1)
11:48:12 (0x70000ede0000): No document title found
11:48:12 (0x70000ede0000): Retrieve Html title:
11:48:12 (0x70000ede0000): Generating form fields
11:48:12 (0x70000ede0000): Adding default font for form fields
11:48:12 (0x70000ede0000): Initializing forms for page 0
11:48:12 (0x70000ede0000): Retrieving document bytes
11:48:12 (0x70000ede0000): Pdf document factory is generating bytes using document pointer 0x7fb6f026b8b0
11:48:12 (0x70000ede0000): Pdf document factory succesfully generated bytes 0x7fb6f026b8b0
11:48:12 (0x70000ede0000): Successfully generated 6674 bytes from Pdf document factory writer
11:48:12 (0x70000ede0000): Closing browser 1
11:48:12 (0x70000ede0000): Received dev tools message on browser 1: '{"method":"Inspector.detached","params":{"reason":"Render process gone."}}' (size: 74)
11:48:12 (0x70000ede0000): Destroying browser (id:1)
11:48:12 (0x70000ede0000): Finished job 0
11:48:12 (0x70000ede0000): Job group finished
11:48:12 (0x70000ede0000): Job group 0 finished
11:48:12 (0x70000ede0000): CefProxyController::QuitMessageLoop()
11:48:12 (0x70000ede0000): CefMessagePumpStd::Quit()
11:48:12 (0x70000ede0000): CefMessagePumpStd::DoQuit()
11:48:12 (0x70000ede0000): Retrieving 6674 bytes from job 0
Retrieved license key from config
Retrieved license key from config
/**
End of first request
*/
---------- IronPdf Logging Started at '/Users/firstname.lastname/Source/repos/my-api/src/Namespace.RestApi/Default.log' ----------
---------- IronPdf Logging Started at '/Users/firstname.lastname/Source/repos/my-api/src/Namespace.RestApi/Default.log' ----------
/**
End of second request (Gets stuck here)
*/