大家好,我正在做一个 Extjs 应用程序,当用户单击一个按钮时,我想用 ReportLab 打开一个 pdf。
我的脚本是:
xtype: 'button',
text: 'Print',
listeners: {
click: function(evt, comp) {
Ext.Ajax.request({
url : 'get_pdf',
method: 'GET',
success: function ( result, request ) {
var pdf = Ext.util.JSON.decode(result.responseText);
if (pdf.success) {
console.log('It's ok');
}
});
}
}
和服务器端我有一个 django 视图:
def get_pdf(request):
# Create the HttpResponse object with the appropriate PDF headers.
response = HttpResponse(mimetype='application/pdf')
response['Content-Disposition'] = 'attachment; filename=somefilename.pdf'
# Create the PDF object, using the response object as its "file."
p = canvas.Canvas(response)
# Draw things on the PDF. Here's where the PDF generation happens.
# See the ReportLab documentation for the full list of functionality.
p.drawString(100, 100, "Hello world.")
# Close the PDF object cleanly, and we're done.
p.showPage()
p.save()
return response
当我点击打印按钮时,Extjs 给我这个错误:语法错误(%PDF-1.3 我做错了什么?