ในภาษา python อยากสอบถามการรับไฟล์ PDF ไปยังเว็บเซอร์วิสค่ะ

แนะนำ สอบถาม ภาษา C สำหรับผู้เริ่มต้น ภาษา Java ภาษา Python

Moderators: mindphp, ผู้ดูแลกระดาน

fonfonn
PHP Super Member
PHP Super Member
Posts: 215
Joined: 11/07/2022 9:28 am

ในภาษา python อยากสอบถามการรับไฟล์ PDF ไปยังเว็บเซอร์วิสค่ะ

Post by fonfonn »

สอบถามการใช้งานการ รับไฟล์ PDF ไป เว็บเซอร์วิส โดยเรามีการรับไฟล์ PDF จากหน้า HTML และจะทำการส่งไปยังเว็บเซอร์วิสเพื่อจะทำการแปลงไฟล์ ในส่วนนี้การรับไฟล์จาก Input หน้า HTML ไปเว็บเซอร์วิส สามารถทำยังไงคะ ใช้เว็บเซอร์วิสที่ใช้คือ fastAPI
wkid
PHP Super Hero Member
PHP Super Hero Member
Posts: 781
Joined: 17/05/2022 10:37 am

Re: ในภาษา python อยากสอบถามการรับไฟล์ PDF ไปยังเว็บเซอร์วิสค่ะ

Post by wkid »

ขอดูตัวของ script ที่เขียนหน่อยได้ไหมครับ ตรงรับค่าไฟล์อะครับ
wkid
PHP Super Hero Member
PHP Super Hero Member
Posts: 781
Joined: 17/05/2022 10:37 am

Re: ในภาษา python อยากสอบถามการรับไฟล์ PDF ไปยังเว็บเซอร์วิสค่ะ

Post by wkid »

อันนี้เป็นรูปแบบการส่งไฟล์ไปยัง ตัว Fast API ใน Python ครับ พอรับไฟล์มาก็ให้ตัวแปล From เก็บไว้ครับ

Code: Select all

form = new FormData();
form.append("file", myFile);
let response = await fetch('/file', {
      method: 'POST',
      body: form
    });

    let result = await response.json();
wkid
PHP Super Hero Member
PHP Super Hero Member
Posts: 781
Joined: 17/05/2022 10:37 am

Re: ในภาษา python อยากสอบถามการรับไฟล์ PDF ไปยังเว็บเซอร์วิสค่ะ

Post by wkid »

อาจจะต้องมีการกำหนดตัวของ ใส่ตรง fetch ด้วยนะครับ
wkid
PHP Super Hero Member
PHP Super Hero Member
Posts: 781
Joined: 17/05/2022 10:37 am

Re: ในภาษา python อยากสอบถามการรับไฟล์ PDF ไปยังเว็บเซอร์วิสค่ะ

Post by wkid »

หน้า API ก็กำหนดตัวมารองรับค่าไฟล์ที่เราส่งมาครับ ตัวอย่างนะครับ

Code: Select all

from fastapi import FastAPI, UploadFile, File


app = FastAPI()


@app.post("/file")
async def upload_file(file: UploadFile = File(...)):
    # จัดการไฟล์ได้เลยครับตรงนี้
    return {"filename": file.filename}
fonfonn
PHP Super Member
PHP Super Member
Posts: 215
Joined: 11/07/2022 9:28 am

Re: ในภาษา python อยากสอบถามการรับไฟล์ PDF ไปยังเว็บเซอร์วิสค่ะ

Post by fonfonn »

ลองนำโค้ดที่แนะนำมาไปทดสอบการใช้งาน ผลลัพธ์ที่ได้คือ
เมื่อเราเลือก Input file และกด Submit ให้ทำการ return ชื่อไฟล์ที่เรา Input เข้าไป ประมาณนี้ไหมคะ
  • ทำการเลือกไฟล์ที่ต้องการ
    ทำการเลือกไฟล์ที่ต้องการ.png
    ทำการเลือกไฟล์ที่ต้องการ.png (7.81 KiB) Viewed 82 times
  • เมื่อกด Submit ให้ทำการ return ชื่อไฟล์ที่เรา Input เข้าไป
    return ชื่อไฟล์ที่เรา Input เข้าไป.png
    return ชื่อไฟล์ที่เรา Input เข้าไป.png (6.88 KiB) Viewed 82 times
User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 33868
Joined: 22/09/2008 6:18 pm
Contact:

Re: ในภาษา python อยากสอบถามการรับไฟล์ PDF ไปยังเว็บเซอร์วิสค่ะ

Post by mindphp »

fonfonn wrote: 03/08/2022 10:09 am สอบถามการใช้งานการ รับไฟล์ PDF ไป เว็บเซอร์วิส โดยเรามีการรับไฟล์ PDF จากหน้า HTML และจะทำการส่งไปยังเว็บเซอร์วิสเพื่อจะทำการแปลงไฟล์ ในส่วนนี้การรับไฟล์จาก Input หน้า HTML ไปเว็บเซอร์วิส สามารถทำยังไงคะ ใช้เว็บเซอร์วิสที่ใช้คือ fastAPI
แยกส่วนของ Form กับ WebService ออกเป็นคนละเรื่องกันนะครับ
form ---> html + css + javascript (หรือจะใช้ภาษาอื่น request ไปที่ API ก็ได้) ในที่นี้ javascript ทำงานที่ ฝั่ง Client ถ้าทำ app android ก็ใช้ java หรือ daft บน flutter ก็ได้
ส่วนนี้ถ้ารับฟอร์มเป็นไฟล์ แปลงไฟล์เป็น base64 ก่อนเพื่อส่ง request ไปที่ API

Web Service ---> Python ล้วนๆ (เขียนด้วย FastAPI) Response ออกมาเป็น json

ฝั่ง Client ถึงนำไปแปลงและแสดงผลตามต้องการต่อ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Programming - C/C++ & java & Python”

Who is online

Users browsing this forum: fonfonn and 10 guests