NReco.PdfGenerator.HtmltoPdfConverterを使用し、最近ベアラトークンでOAuthを実装しました。 ApiControllersを実装して保護した後、コンバータは次のエラーをスローし始めました。NReco CustomWkHtmlArgsベアラトークン
WkHtmlToPdfException:によりネットワークエラーに対するコード1で終了:AuthenticationRequiredError(終了コード:1)
一部スヌーピングした後、私はカスタムヘッダパラメータを追加することが発見されたので、私はトークンベアラをつかんで、それを添付CustomWkHtmlArgs
これは私が遠くに持っているものです。
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です。
-L 0ミリメートル-R 0ミリメートル-T 5ミリメートル-B 0ミリメートル--javascript遅延3000 --customヘッダ許可:ベアラ YHE7HJEh_Hk0wazErUK6DIGcCG7-GRDHBEWRA-ju9hewqPk9cjY3zH5MT ....
トークンがありました簡潔さのために短縮された。私はコロンを削除しようとしましたが、私はまだAuthRequiredErrorを取得します。ヘッダー認証トークンを渡すことに慣れている人はいますか?
コマンドラインについてのヒントをありがとう。それはトラブルシューティングプロセスを迅速化しました。 2つの注意点があります。 httpヘッダーパラメータ全体ではなく、トークンを引用符で囲みます。 'htmlToPdf.CustomWkHtmlArgs + = " - custom-header Authorization \" "+ accessToken +" \ ""' ページにセキュリティで保護された追加のAJAX呼び出しが含まれている場合は、スイッチ_-- custom-header-propagation_も追加する必要があります。これはwkhtmltopdfに、各後続の呼び出しにヘッダーオブジェクトを追加するよう指示します。 –
@JeremyBondあなたのコメントで回答を更新しました。 –