HTTP server ง่าย ๆ ด้วย Python3

Photo by Cookie the Pom on Unsplash

บทความนี้จะพูดถึงการใช้ Python 3 สร้าง HTTP server อย่างง่าย ๆ

Python 3 ใช้คำสั่ง

python -m http.server PORT

โดย PORT คือเลข port ของ http server นั่นเอง ตัวอย่างด้านล่างกำหนด PORT เป็น 80
แต่ถ้าไม่กำหนด ค่าตั้งต้นคือ 8000

เมื่อเข้าไปที่ localhost จาก browser ก็จะเจอลิสต์ของไดเร็กทอรี่ที่เรารันคำสั่งขึ้นมา
แต่ถ้า PORT ไม่ใช่ 80 ให้เข้าไปที่ http://localhost:PORT แทน

ลิสต์ของไดเร็กทอรี่

ถ้าเราสร้างเว็ปเพจ ให้ไฟล์ชื่อ index.html ไว้ในไดเร็กทอรี่ ตัวอย่างเช่น

<html>
<body>
<h3>This is my page.</h3>
</body>
</html>

เมื่อรีเฟรชหน้า localhost ก็จะเจอกับเว็ปเพจของเรา

หน้าแสดงผลไฟล์ index.html

บางครั้งเราเขียน REST API อ่านไฟล์บน HTTP Server ของเราด้วย HTTP GET เมื่อเทสบน Chrome จะเจอกับข้อผิดพลาดปัญหา CORS (Cross-origin resource sharing) โดยเฉพาะถ้าทั้งหมดเกิดขึ้นบนเครื่องเราเอง (localhost)
วิธีแก้ง่าย ๆ คือใช้ Chrome dev mode โดยการสร้าง Shortcut ใหม่แล้วเติม “ — disable-web-security” ต่อท้าย Target เช่น

“C:\Program Files (x86)\Google\Chrome\Application\chrome.exe” — disable-web-security
ตัวอย่าง Shortcut ใหม่ชื่อ ChromeDev

เท่านี้ก็เทสโค้ดได้แบบไม่มีปัญหาแล้ว

--

--