ทดสอบ API ในเครื่อง

วิธีรับ callback จากอุปกรณ์บนเครื่องที่ใช้พัฒนา และทดสอบคำสั่ง REST ด้วย Postman ก่อนนำขึ้นใช้งานจริง

ทดสอบในเครื่อง (โดยไม่ต้องติดตั้งบนเซิร์ฟเวอร์)

หากต้องการทดสอบการเชื่อมต่อ callback จากเครื่องที่ใช้พัฒนา โดยไม่ต้องติดตั้งบนเซิร์ฟเวอร์จริง คุณต้องทำให้เครื่องของคุณเข้าถึงได้จากอินเทอร์เน็ต เพื่อให้ Cams Protocol Engine POST ข้อมูล callback มายังเครื่องได้

ตัวเลือก A: IP สาธารณะ + Port Forwarding

หากการเชื่อมต่ออินเทอร์เน็ตของคุณมีที่อยู่ IP สาธารณะ (แบบคงที่) คุณสามารถ forward พอร์ตภายนอกมายังแอปพลิเคชันในเครื่องของคุณได้

1

ตรวจสอบ IP สาธารณะของคุณ

เข้าไปที่ whatismyip.com หรือรัน curl ifconfig.me ในเทอร์มินัล แล้วจดที่อยู่ IP สาธารณะของคุณไว้

2

ตั้งค่า port forwarding บนเราเตอร์

เข้าสู่หน้าผู้ดูแลระบบของเราเตอร์ forward พอร์ตภายนอก (เช่น 8080) ไปยัง IP ภายในของเครื่องคุณและพอร์ตที่แอปพลิเคชันของคุณทำงานอยู่ (เช่น 3000, 5000, 8080)

3

กำหนดค่า Callback URL

ใน API Monitor ตั้งค่า Callback URL ของคุณเป็น:
http://YOUR_PUBLIC_IP:8080/callback

4

ทดสอบ

ลงเวลาบนอุปกรณ์ไบโอเมตริกซ์ Cams Protocol Engine จะ POST ข้อมูล callback ไปยัง IP สาธารณะของคุณ แล้วเราเตอร์จะส่งต่อไปยังแอปพลิเคชันในเครื่อง

ตัวเลือก B: เครื่องมือ Tunneling (ไม่ต้องมี IP สาธารณะ)

หากคุณไม่มี IP สาธารณะ หรือตั้งค่า port forwarding ไม่ได้ ให้ใช้บริการ tunneling เพื่อเปิดเซิร์ฟเวอร์ในเครื่องของคุณสู่อินเทอร์เน็ต

เครื่องมือคำสั่งหมายเหตุ
ngrokngrok http 3000มีแผนฟรี ได้ URL HTTPS สาธารณะทันที
Cloudflare Tunnelcloudflared tunnel --url localhost:3000ฟรี ไม่ต้องมีบัญชีสำหรับ quick tunnel
localhost.runssh -R 80:localhost:3000 ssh.localhost.runไม่ต้องติดตั้ง ทำงานผ่าน SSH
1

เริ่มแอปพลิเคชันในเครื่องของคุณ

รันเซิร์ฟเวอร์ callback ในเครื่อง (เช่น php -S localhost:8080 หรือ node server.js หรือ python app.py)

2

เริ่ม tunnel

รันเครื่องมือ tunneling ซึ่งจะแสดง URL สาธารณะ เช่น https://abc123.ngrok-free.app

3

กำหนดค่า Callback URL

ใน API Monitor ตั้งค่า Callback URL เป็น URL ของ tunnel:
https://abc123.ngrok-free.app/callback

4

ทดสอบ

ลงเวลา callback จะไหลผ่าน tunnel มายังเครื่องของคุณแบบเรียลไทม์

สำคัญ: URL ของ tunnel เป็นแบบชั่วคราวและจะเปลี่ยนทุกครั้งที่คุณรีสตาร์ทเครื่องมือ (เว้นแต่ใช้แผนแบบชำระเงินที่จองโดเมนไว้) อัปเดต Callback URL ใน API Monitor ทุกครั้งที่ได้ URL tunnel ใหม่
การทดสอบ RESTful API ไม่ต้องตั้งค่านี้ คุณเรียก endpoint RESTful จากเครื่องของคุณได้โดยตรงด้วย Postman หรือโค้ดของคุณ — ไม่ต้องทำ port forwarding หรือ tunneling เฉพาะ Callback API (ขาเข้าจาก Cams มายังเซิร์ฟเวอร์ของคุณ) เท่านั้นที่ต้องให้เครื่องของคุณเข้าถึงได้จากอินเทอร์เน็ต

การทดสอบ URL

ก่อนใช้งานจริง ให้ตรวจสอบ endpoint ของคุณด้วย Postman เรามี collection สำเร็จรูปที่ตั้งค่าครบทั้ง 27 การทำงาน RESTful ไว้แล้ว

Postman Collection

ดาวน์โหลดและนำเข้าใน Postman ตั้งค่าตัวแปร base_url, stgid และ auth_token แล้วเริ่มทดสอบได้ทันที

📥 ดาวน์โหลด Postman Collection
1

นำเข้า collection

เปิด Postman → Import → ลากและวางไฟล์ .json ที่ดาวน์โหลดมา การทำงาน RESTful ทั้ง 27 รายการจะปรากฏโดยจัดกลุ่มตามหมวดหมู่

2

ตั้งค่าตัวแปร

ไปที่แท็บ Variables ของ collection แล้วตั้งค่า:
base_url = URL endpoint RESTful ของคุณ (จาก API Monitor)
stgid = Service Tag ID ของอุปกรณ์คุณ
auth_token = AuthToken ของอุปกรณ์คุณ

3

ส่งคำขอ

เลือกการทำงานใดก็ได้ แก้ไข JSON body ด้วยค่าของคุณ แล้วกด Send ตรวจสอบว่าการตอบกลับตรงกับรูปแบบที่คาดไว้ตามเอกสารข้างต้น

ตัวอย่าง Postman

ภาพหน้าจอด้านล่างแสดงคำขอ API ตัวอย่างที่ตั้งค่าใน Postman ตั้งเมธอดเป็น POST วาง URL endpoint RESTful ของคุณพร้อม ?stgid= และใช้ body แบบ raw JSON

ภาพหน้าจอ Postman แสดงการตั้งค่าคำขอ Cams API
ทดสอบ endpoint Callback ของคุณด้วย POST ตัวอย่าง JSON RealTimePunchLog (ดู Op #11) ไปยัง Callback URL ของคุณ และตรวจสอบว่าเซิร์ฟเวอร์ส่งกลับ {"status":"done"} พร้อม HTTP 200