Tôi đang lặp qua danh sách các liên kết trên một trang, tạo đối tượng URI cho mỗi trang. Khi đối tượng URI được tạo ra, tôi không biết liệu URL có một chương trình, vì vậy khi sau đó tôi gọi $uri->host()
, tôi sẽ thỉnh thoảng có đượcLàm cách nào để kiểm tra xem tôi có thể gọi máy chủ lưu trữ() trên đối tượng URI trong Perl không?
Can't locate object method "host" via package "URI::_generic" at -e line 1.
vì đối tượng URI là loại URI::_generic
, và doesn không có thuộc tính host().
Tôi có thể kiểm tra trước khi tạo đối tượng với regex, hoặc tôi có thể kết thúc cuộc gọi $uri->host()
trong khối eval
để xử lý ngoại lệ, nhưng tôi cho rằng phải có phương pháp suave hơn một trong số đó.
Tôi chưa bao giờ biết về phương thức -> can() cho các đối tượng, cảm ơn! –
Bạn đã có cuộc gọi 'trong cuộc nói của bạn' chưa từng có. – Ether