Wednesday, August 28, 2019

มาลองสร้าง Web back end ด้วย Flask + Python กัน

แน่นอนว่าใครทำงานด้านเขียนโปรแกรมทางวิทยาศาสตร์สายต่างๆ ก็คงคุ้นเคยกับ python ดี แล้วถ้าต้องการเอา python ไปเขียน web back end ล่ะ ก็จะมี python web framework หลายๆตัวที่ใช้งานได้ เช่น django เป็นต้น

วันนี้เรามาลองเล่น python web framework ที่ชื่อว่า flask ดูกัน เค้าบอกว่าเล็กพริกขี้หนูนะตัวนี้

ก่อนอื่นถ้าอยากดูเอกสารรายละเอียดเกี่ยวกับการใช้งาน flask ไปดูได้ที่ https://flask.palletsprojects.com ผมว่าเค้าเขียนไว้ดีมาก

เอาล่ะ มาสรุปแบบคนขี้เกียจกันดีกว่า ว่าจะติดตั้ง flask ยังไง

  • ถ้ายังไม่มี python 3 ให้ติดตั้งก่อน
  • สร้าง Virtual environment สำหรับงาน web นี้ (การสร้าง virtual env นี้ก็มีประโยชน์คือเราจะสามารถติดตั้ง python package ที่เวอร์ชันต่างๆกัน สำหรับแต่ละ environment ได้)
    • สร้างโฟลเดอร์เอาไว้เก็บงาน web เช่น D:\web
    • เปิด command prompt และเข้าไปที่โฟลเดอร์ข้างต้น พิมพ์คำสั่ง
      python -m venv venv
    • คำสั่งข้างต้นจะสร้าง subfolder ชื่อ venv ซึ่งก็จะเป็นโฟลเดอร์ที่เอาไว้ติดตั้ง python package ด้วย
    • ทำการ activate virtual env. นี้ โดยใช้คำสั่ง
      D:\web\venv\Scripts\activate
      จะเห็นว่า command prompt มีชื่อ virtual env. อยู่ข้างหน้า เช่น <venv>D:\web
    • ติดตั้ง flask โดยพิมพ์
      pip install flask
      เสร็จแล้วจ้า
ต่อมา มาทดสอบกัน
  •  สร้างไฟล์ python เช่น D:\web\server.py
  • เขียนโค้ดตามนี้เลย
from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, World!'

ถ้าจะรันไฟล์นี้ ก็จะใช้คำสั่ง
<venv>D:\web\set FLASK_APP=server.py

จากนั้นเราก็พร้อมสั่งให้ flask ประมวลผลไฟล์ server.py และทำตัวเองเป็น server ที่ port 5000 ด้วยคำสั่ง
<venv>D:\web\flask run

ถ้าไม่มีข้อความผิดพลาด เปิดเว็บแล้วเช็คที่ localhost:5000 ได้เลย

ที่เหลือลองไปเล่นกันต่อเองนะครับ

No comments:

Post a Comment