หากต้องการใช้ PortPreview กับแอป Express.js ให้ฟังบน 0.0.0.0 (หรือ app.listen(PORT) โดยไม่เชื่อมโยงกับ localhost เท่านั้น) ให้เรียกใช้ npx portpreview PORT และลงทะเบียน HTTPS URL สำหรับ webhooks, การเรียกกลับ OAuth และการสาธิต API
ทำไมต้องทันเนลเอ็กซ์เพรส
Express ยังคงเป็นเลเยอร์ HTTP เริ่มต้นสำหรับ Node API และ BFF ผู้ให้บริการการชำระเงิน, เว็บฮุค CRM และเซิร์ฟเวอร์ OAuth จำเป็นต้องมีปลายทาง HTTPS สาธารณะในขณะที่คุณแก้ไขข้อบกพร่องลำดับมิดเดิลแวร์และการแยกวิเคราะห์เนื้อหาดิบในเครื่อง
- Webhooks เมานต์
express.raw()บนเส้นทาง webhook ก่อนexpress.json()รายละเอียดใน Express webhook local testing. - OAuth ตั้งค่า URI การเปลี่ยนเส้นทางไปยังต้นทางของช่องสัญญาณของคุณ ดู OAuth callback testing.
- การแชร์ API ให้ทีมมือถือหรือฟรอนต์เอนด์เข้าถึง API ภายในเครื่องของคุณโดยไม่ต้องใช้ VPN ดู share local dev server.
เริ่มต้นอย่างรวดเร็ว
- สตาร์ทเอ็กซ์เพรส:
node server.jsหรือnpm run devบนพอร์ต 3000 - เรียกใช้
npx portpreview 3000. - ทดสอบ
GET https://your-tunnel.portpreview.dev/health. - กำหนดค่า webhooks ของผู้ให้บริการเป็น
POST https://your-tunnel.portpreview.dev/api/webhooks/...
เซิร์ฟเวอร์ด่วนขั้นต่ำ
import express from 'express';
const app = express();
const PORT = process.env.PORT ?? 3000;
app.get('/health', (_req, res) => res.json({ ok: true }));
app.listen(PORT, () => {
console.log(`Listening on http://localhost:${PORT}`);
});
Express Listen บนอินเทอร์เฟซทั้งหมดตามค่าเริ่มต้น หากคุณเชื่อมโยงอย่างชัดเจน ให้ใช้ '0.0.0.0' เพื่อให้กระบวนการทันเนลสามารถส่งต่อการรับส่งข้อมูลได้
เชื่อถือส่วนหัวของพร็อกซี
ด้านหลังพอร์ต ดูตัวอย่างแอปของคุณเห็น X-Forwarded-Proto: https เปิดใช้งานพร็อกซีที่เชื่อถือได้เมื่อสร้าง URL ที่สมบูรณ์หรือคุกกี้ที่ปลอดภัย:
app.set('trust proxy', 1);
CORS สำหรับส่วนหน้าแบบแยก
หากเซิร์ฟเวอร์ React หรือ Vue dev บนพอร์ตอื่นเรียก Express API ของคุณผ่านช่องทางที่แยกจากกัน ให้กำหนดค่า CORS อย่างชัดเจน:
import cors from 'cors';
app.use(cors({ origin: process.env.FRONTEND_TUNNEL_URL }));
รายการตรวจสอบความปลอดภัย
- ตรวจสอบลายเซ็นของเว็บฮุคก่อนแยกวิเคราะห์ JSON
- อย่าเปิดเผยเส้นทางผู้ดูแลระบบที่ไม่ได้รับการรับรองความถูกต้องบนอุโมงค์ที่ใช้ร่วมกัน
- หยุดอุโมงค์เมื่อเสร็จสิ้น ดู tunnel security.
Express documentation ครอบคลุมมิดเดิลแวร์และการกำหนดเส้นทาง Start PortPreview free.
