Я хотел бы сгенерировать PDF из содержимого редактора кендо и сохранить его на сервере через ajax с jQuery.Серверная часть PDF должна быть сохранена с помощью PHP.
Я создал следующий пример:
HTML:
<button id="btnPdfExport">PDF Export</button>
<br>
<div id="pdf_content" style="width:250px; height:350px;">
Content to export by pdf<br>
</div>
JS:
$(document).ready(function() {
$("#pdf_content").kendoEditor({
pdf: {
fileName: "testExport.pdf",
proxyURL: "myproxy path",
paperSize: "a4",
},
pdfExport: function (e) {
// save here?
},
});
$("#btnPdfExport").kendoButton({
click:function(){
$("#pdf_content").getKendoEditor().saveAsPDF()
.done(function (e) {
// save here?
});
}
});
});
PHP прокси:
// https://docs.telerik.com/kendo-ui/framework/save-files/introduction
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$fileName = $_POST['fileName'];
$contentType = $_POST['contentType'];
$base64 = $_POST['base64'];
$data = base64_decode($base64);
header('Content-Type:' . $contentType);
header('Content-Length:' . strlen($data));
header('Content-Disposition: attachment; filename=' . $fileName);
echo $data;
}
jQuery ajax:
$.ajax({
method:'POST',
url:ajaxURL,
dataType:'json',
data:{
data: JSON.stringify(data);
},
success : function( response ) {
},
});
Я попытался перехватить PDF с помощью proxyURL, а затем сохранить его.или с pdfExport (), а также с .done (), но, к сожалению, я делаю это неправильно.
Как сохранить сгенерированный PDF на сервере?PDF не должен открываться в браузере.