Vì Chrome gần như không hiển thị ở Chế độ không giao diện người dùng, nên việc giải quyết vấn đề có thể khó khăn. Bạn có thể gỡ lỗi Chrome không có giao diện người dùng theo cách rất giống với Chrome có giao diện người dùng.
Khởi chạy Chrome ở chế độ Không có giao diện người dùng bằng cờ hiệu dòng lệnh --remote-debugging-port.
chrome --headless --remote-debugging-port=0 https://developer.chrome.com/
Thao tác này sẽ in một URL WebSocket duy nhất vào stdout, ví dụ:
DevTools listening on ws://127.0.0.1:60926/devtools/browser/b4bd6eaa-b7c8-4319-8212-225097472fd9
Trong một phiên bản Chrome có giao diện người dùng, sau đó, chúng ta có thể sử dụng gỡ lỗi từ xa bằng Công cụ của Chrome cho nhà phát triển để kết nối với mục tiêu Headless và kiểm tra mục tiêu đó.
- Chuyển đến
chrome://inspectrồi nhấp vào nút Configure… (Định cấu hình...). - Nhập địa chỉ IP và số cổng từ URL của WebSocket, ví dụ:
127.0.0.1:60926. - Nhấp vào Xong. Bạn sẽ thấy một Remote Target (Mục tiêu từ xa) xuất hiện cùng với tất cả các thẻ và mục tiêu khác được liệt kê.
- Nhấp vào inspect (kiểm tra) để truy cập vào Công cụ của Chrome cho nhà phát triển và kiểm tra mục tiêu Headless từ xa, bao gồm cả chế độ xem trực tiếp của trang.
