Truy cập sớm — CLI mã nguồn mở

Xem trước an toàn tức thì
cho ứng dụng localhost.

Mở ứng dụng cục bộ của bạn bằng URL HTTPS công khai, kiểm tra các yêu cầu đến và gỡ lỗi webhook mà không cần deploy lên staging.

Không cần deployHTTPS mặc địnhSẵn sàng cho webhookCLI mã nguồn mở
Hoạt động với
  • Stripe
  • GitHub
  • Shopify
  • Twilio
  • Slack
  • Discord

Chỉ là ví dụ tích hợp — không liên kết hay chứng thực bởi các nhà cung cấp này.

terminal — portpreview
$npx portpreview 3000
ConnectedURL:https://jjm5s.portpreview.devCopy
ForwardingTarget:http://localhost:3000
Cuộn để khám phá

Phát triển cục bộ không nên cần deploy lên staging.

Mỗi chu kỳ deploy làm bạn chậm lại. PortPreview xóa bỏ khoảng cách đó.

Webhook không tới được localhost

Stripe, GitHub và các dịch vụ khác không thể gọi 127.0.0.1. Bạn cần một URL công khai để nhận callback.

Khách hàng không xem được công việc của bạn

Chia sẻ URL localhost là vô ích. Staging tạo thêm ma sát giữa code và phản hồi.

Kiểm thử trên di động rất khổ

localhost không chạy trên điện thoại. Mỗi lần xem trước trên di động đều cần deploy hoặc cấu hình VPN phức tạp.

Gỡ lỗi không có lịch sử

Khi webhook lỗi, bạn không có log yêu cầu nào. Bạn gỡ lỗi trong bóng tối, không thể kiểm tra gì.

Một tunnel. Thấy rõ toàn bộ yêu cầu.

Mọi tính năng đều thiết kế cho quy trình phát triển nhiều webhook.

URL HTTPS công khai cho localhost

Nhận một URL công khai an toàn chuyển tiếp tới máy chủ cục bộ của bạn. Không cần DNS, không cấu hình SSL, không reverse proxy.

Trình kiểm tra yêu cầu webhook

Xem mọi yêu cầu đến: phương thức, header, body, thời gian. Kiểm tra chính xác những gì dịch vụ bên ngoài gửi tới ứng dụng của bạn.

Phát lại yêu cầu đã bắt

Gửi lại bất kỳ yêu cầu đã bắt nào tới máy chủ cục bộ. Kiểm thử cách ứng dụng xử lý cùng một payload lặp đi lặp lại.

Sao chép yêu cầu dưới dạng cURL

Sao chép bất kỳ yêu cầu nào thành lệnh cURL chỉ với một cú nhấp. Phát lại từ terminal, thêm vào test, hoặc chia sẻ với nhóm.

Xem trước bảo vệ bằng mật khẩu Dự kiến

Bảo vệ URL xem trước bằng mật khẩu. Chỉ chia sẻ với khách hàng hoặc thành viên nhóm được ủy quyền.

Tên miền phụ dành riêng Pro

Giữ một tên miền phụ cố định như <code>myapp.portpreview.dev</code>. URL xem trước của bạn giữ nguyên qua mỗi phiên.

Chia sẻ theo nhóm Dự kiến

Chia sẻ tunnel và lịch sử yêu cầu với nhóm của bạn. Cùng gỡ lỗi webhook theo thời gian thực.

WebSocket đi ra. Không cấu hình.

Không chỉnh router, không quy tắc tường lửa, không cần IP công khai.

Trình duyệt / WebhookBên gọi từ ngoài
Cổng PortPreviewBiên đám mây
WebSocketTunnel mã hóa
CLI PortPreviewMáy của bạn
localhost:3000Ứng dụng của bạn

CLI mở một kết nối WebSocket đi ra, nên không cần cấu hình router hay tường lửa. Lưu lượng được mã hóa đầu cuối giữa cổng và máy cục bộ của bạn.

StripeGitHubTwilioSlackSendGridPipedream

Xây dựng cho việc phát triển nhiều webhook.

Hoạt động với mọi dịch vụ gửi callback HTTP.

POST/webhooks/stripe200124msvừa xong
1.2 KB
Content-Type:application/json
User-Agent:Stripe/1.0 (+https://stripe.com)
Stripe-Signature:t=1625000000,v1=abc123...
Accept:*/*
{
  "id": "evt_3Lm2NnF8Zq",
  "type": "payment_intent.succeeded",
  "data": {
    "object": {
      "id": "pi_3Lm2NnF8Zq",
      "amount": 2999,
      "currency": "usd",
      "status": "succeeded"
    }
  }
}
POST /webhooks/stripe HTTP/1.1
Content-Type: application/json
User-Agent: Stripe/1.0
Stripe-Signature: t=1625000000,v1=abc123...

{"id":"evt_3Lm2NnF8Zq","type":"payment_intent.succeeded"}
"id": "evt_3Lm2NnF8Zq""type": "payment_intent.succeeded""data": {...}

Từ cục bộ tới chạy thật chỉ với một lệnh.

Kiểm thử webhook Stripe cục bộ

Trỏ endpoint webhook Stripe tới URL PortPreview của bạn và nhận sự kiện theo thời gian thực.

Chia sẻ localhost với khách hàng

Tạo một URL công khai và gửi cho khách hàng. Họ thấy công việc đang làm của bạn ngay lập tức.

Mở ứng dụng cục bộ trên di động

Truy cập URL công khai trên bất kỳ điện thoại hay máy tính bảng nào. Kiểm thử bố cục responsive và tương tác di động.

Gỡ lỗi callback API

Kiểm tra mọi callback mà API của bạn nhận. Xem header, payload và thời gian của từng yêu cầu.

Bỏ qua deploy staging tạm thời

Loại bỏ các deploy dùng một lần cho việc review nhanh. Xem trước trực tiếp từ môi trường cục bộ.

QA bản build cục bộ trước khi phát hành

Cho QA một URL công khai để kiểm thử bản build cục bộ trước khi merge. Bắt lỗi sớm.

Client mã nguồn mở. Đám mây được lưu trữ.

Mã nguồn mở

  • Client CLI
  • Agent chuyển tiếp cục bộ
  • Kiểu giao thức
  • Ví dụ

Đám mây được lưu trữ

  • Cổng
  • Bảng điều khiển
  • Lịch sử yêu cầu
  • Phát lại
  • Nhóm
  • Thanh toán
  • Chống lạm dụng

Client CLI là mã nguồn mở nên lập trình viên có thể xác minh rằng nó chỉ proxy cổng cục bộ được chọn và không đọc tệp, biến môi trường hay khóa bí mật.

Giá đơn giản. Không bất ngờ.

Miễn phí
$0mãi mãi
  • 1 tunnel hoạt động
  • Tên miền phụ ngẫu nhiên
  • 20 yêu cầu gần nhất
  • Phiên 2 giờ
  • Không cần đăng nhập
Tham gia danh sách chờ
Nhóm
Miễn phí*miễn phí 6 tháng đầu

Mỗi người dùng, tối thiểu 3 chỗ

  • Mọi thứ của Pro, cùng:
  • Tunnel chia sẻ
  • Không gian làm việc nhóm
  • Kiểm soát truy cập
  • Nhật ký kiểm toán
Liên hệ chúng tôi

Pro và Nhóm miễn phí trong 6 tháng sử dụng đầu tiên. Không cần thẻ tín dụng. Chúng tôi thông báo trước khi bắt đầu tính phí — hủy bất cứ lúc nào.

Câu hỏi về giá

Khi nào bắt đầu tính phí Pro?

Sau 6 tháng đầu tiên trên Pro. Chúng tôi thông báo ít nhất 14 ngày trước khi bắt đầu tính phí, và bạn có thể hủy trước đó.

Điều gì được tính là một phiên?

Một phiên là một lần chạy CLI. Đóng CLI sẽ kết thúc phiên. Phiên miễn phí tự hết hạn sau 2 giờ; phiên Pro vẫn mở chừng nào CLI còn chạy.

Tôi có thể đổi gói sau này không?

Có. Nâng cấp có hiệu lực ngay, hạ cấp vào cuối chu kỳ thanh toán. Tên miền phụ dành riêng và lịch sử yêu cầu của bạn được giữ lại khi đổi gói.

Bạn có hoàn tiền không?

Nếu bạn không hài lòng trong 30 ngày đầu sau khi Pro ra mắt, chúng tôi hoàn lại toàn bộ. Chỉ cần gửi email cho chúng tôi.

Điều này khác ngrok hay Cloudflare Tunnel thế nào?

Chúng tôi tập trung vào vòng lặp phát triển webhook: bắt, kiểm tra và phát lại từng yêu cầu mà không cần kích hoạt lại sự kiện. Xem các bài so sánh của chúng tôi để biết chi tiết.

Câu hỏi thường gặp.

CLI có thực sự là mã nguồn mở không?

Có. CLI dùng giấy phép Apache-2.0 và mã nguồn ở trên GitHub. Bạn có thể kiểm tra chính xác nó làm gì — proxy cổng cục bộ được chọn, không gì khác. Nó không đọc tệp, biến môi trường hay khóa bí mật.

Điều này khác ngrok thế nào?

PortPreview tối ưu cho việc gỡ lỗi webhook: mọi yêu cầu đến đều được bắt với header, body và thời gian đầy đủ, và bạn có thể phát lại bất kỳ yêu cầu nào tới handler cục bộ chỉ với một cú nhấp. ngrok cũng dùng được, nhưng bắt và phát lại là tính năng trả phí hoặc cần công cụ bên ngoài.

URL tunnel của tôi có giữ nguyên giữa các phiên không?

Tunnel miễn phí nhận một tên miền phụ ngẫu nhiên mỗi phiên. Gói Pro bao gồm tên miền phụ dành riêng, nên URL như myapp.portpreview.dev giữ nguyên mãi mãi — hữu ích cho các cấu hình webhook mà bạn chỉ muốn thiết lập một lần.

Hỗ trợ những cổng và giao thức nào?

Bất kỳ cổng HTTP/HTTPS nào. Nâng cấp WebSocket được chuyển tiếp đúng cách, nên ứng dụng thời gian thực, HMR và dịch vụ sự kiện có chữ ký đều chạy mà không cần cấu hình thêm.

Mở localhost ra internet có an toàn không?

Tunnel chỉ chuyển tiếp lưu lượng tới cổng cục bộ cụ thể mà bạn chọn. Không gì khác trên máy bạn có thể truy cập được. Gói Pro bổ sung bảo vệ bằng mật khẩu và kiểm soát truy cập để yên tâm hơn.

Khi nào PortPreview ra mắt công khai?

Chúng tôi đang chạy chương trình truy cập sớm mở. Hãy tham gia danh sách chờ để nhận lời mời — phần lớn người đăng ký được truy cập trong vài ngày.

Bắt đầu với một lệnh.

$npx portpreview 3000

Khi gửi, bạn đồng ý với Quyền riêng tư và cho phép lưu email của bạn.