首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NReco CustomWkHtmlArgs承载令牌

NReco CustomWkHtmlArgs承载令牌
EN

Stack Overflow用户
提问于 2017-11-29 00:14:25
回答 1查看 1.1K关注 0票数 0

使用NReco.PdfGenerator.HtmltoPdfConverter和最近实现的OAuth与Bearer令牌。在实现和保护我的ApiControllers之后,转换器开始抛出以下错误。

WkHtmlToPdfException:由于网络错误而退出代码1: AuthenticationRequiredError (退出代码: 1)

经过一些窥探之后,我发现我可以添加自定义的标头参数,所以我抓起了承载令牌并将其附加到CustomWkHtmlArgs中。

这就是我要走远的路。

代码语言:javascript
复制
        htmlToPdf.CustomWkHtmlArgs = "-L 0mm -R 0mm -T 5mm -B 0mm --javascript-delay 3000";

        FileHandlingModule.deleteFile(savePath);

        //Get Auth Token
        var accessToken = "Bearer " + Request.Headers.Authorization.Parameter;

        htmlToPdf.CustomWkHtmlArgs += " --custom-header Authorization: " + accessToken;
        htmlToPdf.GeneratePdfFromFile(purl, null, savePath);

这就是CustomWkHtmlArgs,这就是args字符串的样子。

-L 0 0mm 0 0mm 5 0mm 0mm --javascript-delay 3000 -自定义标头授权:无记名-R

为了简洁起见,这个标记被缩短了。我已经尝试删除冒号,但我仍然得到了AuthRequiredError。有人熟悉传递报头令牌吗?

EN

回答 1

Stack Overflow用户

发布于 2017-11-29 07:15:09

首先,尝试在引号中传递标头值:

代码语言:javascript
复制
htmlToPdf.CustomWkHtmlArgs += " --custom-header \"Authorization\" \"" + accessToken + "\"";

如果需要这个标题来访问页面资源(图像、css、ajax调用)选项“--自定义标头-传播”,也应该指定。

顺便说一句,您试过用命令行中的wkhtmltopdf测试您的自定义头吗?此外,您还可以处理htmlToPdf.LogReceived事件并获得wkhtmltopdf控制台日志输出--这对于调试可能很有用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47543052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档