[英]Return PDF in Azure Function via HttpResponse (PyPDF2)
我創建了一個 Azure 函數,它將用戶數據寫入 pdf 的特定字段,並將該 pdf 作為對客戶端的響應返回。 但是,我總是收到 500 錯誤代碼,即使直到最后一步的所有步驟似乎都可以正常工作,並且它也可以在本地運行而沒有問題。
這是我的init.py :
import logging
import azure.functions as func
from PyPDF2 import PdfFileReader, PdfFileWriter
def main(req: func.HttpRequest) -> func.HttpResponse:
logging.info('----- Python HTTP trigger function processed a request. -----')
BLOB_NAME = 'sheet.pdf'
reader = PdfFileReader(BLOB_NAME)
writer = PdfFileWriter()
page = reader.pages[0]
writer.addPage(page)
sheetData = {}
sheetData["Full Name"] = "Name"
writer.updatePageFormFieldValues(writer.getPage(0), sheetData)
return func.HttpResponse(writer, mimetype="application/pdf")
我可以返回str(writer.getPage(0))
之類的東西而不是writer
,所以我假設我的 requirements.txt 工作正常。 只有在返回沒有字符串類型主體的 HttpResponse 時才會失敗。 我認為添加正確的 mime 類型可以解決問題,但它返回相同的狀態代碼。 在這一點上我有點不知所措。
嘗試創建一個字節對象來返回:
import io
pdf_bytes = io.BytesIO()
writer.write(pdf_bytes)
pdf_bytes.seek(0)
return func.HttpResponse(bdf_bytes.read(), mimetype="application/pdf")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.