У меня проблема с моей Azure функцией. Я использую план обслуживания приложений на основе Linux (B1). После развертывания моего кода и запуска функции Azure я получаю эту ошибку.
2020-03-11T07:02:55.985 [Error] Executed 'PdfRender_dotnet_framework' (Failed, Id=52201ad7-8012-4f93-bc17-0accae6a1540)
No such file or directory
Странно то, что я могу перейти в этот каталог в консоли и в Kudu с помощью bash / s sh. Таким образом, кажется, что все было развернуто нормально, но почему он все еще показывает мне это сообщение об ошибке.
Я много раз проверял, все ли правильно развернуто, и я не нашел никаких проблем.
Сообщение об ошибке
Каталог в консоли
Каталог в Bash (Куду)
Это мой функция. json
Я также заметил, что функция azure достигает кода.
Код моей функции.
public static class dotnet_core_pdf
{
[FunctionName("dotnet_core_pdf")]
public static HttpResponseMessage Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)]HttpRequest req, TraceWriter log, ExecutionContext executionContext)
{
string name = req.Query["url"];
log.Info(name);
//Initialize HTML to PDF converter
HtmlToPdfConverter htmlConverter = new HtmlToPdfConverter();
WebKitConverterSettings settings = new WebKitConverterSettings();
//Set WebKit path
settings.WebKitPath = Path.Combine(executionContext.FunctionAppDirectory, "QtBinariesWindows");
//Assign WebKit settings to HTML converter
htmlConverter.ConverterSettings = settings;
//Convert URL to PDF
PdfDocument document = htmlConverter.Convert(name);
MemoryStream ms = new MemoryStream();
//Save the PDF document
document.Save(ms);
ms.Position = 0;
HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);
response.Content = new ByteArrayContent(ms.ToArray());
response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
{
FileName = "HTMLToPDFAzure.pdf"
};
response.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/pdf");
return response;
}
}
}
УВЕДОМЛЕНИЕ : Я изменил имя папки, которое я использую. Net Core not. Net Framework