Mô tả
Sử dụng API chrome.history để tương tác với bản ghi các trang đã truy cập của trình duyệt. Bạn có thể thêm, xoá và truy vấn URL trong nhật ký của trình duyệt. Để ghi đè trang nhật ký bằng phiên bản của riêng bạn, hãy xem phần Ghi đè trang.
Quyền
historyTệp kê khai
Bạn phải khai báo quyền "history" trong tệp kê khai tiện ích để sử dụng history API. Ví dụ:
{
  "name": "My extension",
  ...
  "permissions": [
    "history"
  ],
  ...
}
Loại chuyển đổi
History API sử dụng một loại chuyển đổi để mô tả cách trình duyệt chuyển đến một URL cụ thể trong một lượt truy cập cụ thể. Ví dụ: nếu người dùng truy cập vào một trang bằng cách nhấp vào một đường liên kết trên một trang khác, thì loại chuyển đổi là "đường liên kết".
Bảng sau đây mô tả từng loại hiệu ứng chuyển đổi.
| Loại chuyển đổi | Mô tả | 
|---|---|
| "liên kết" | Người dùng truy cập vào trang này bằng cách nhấp vào một đường liên kết trên một trang khác. | 
| "typed" | Người dùng truy cập vào trang này bằng cách nhập URL vào thanh địa chỉ. Cũng được dùng cho các thao tác điều hướng tường minh khác. Xem thêm được tạo, được dùng cho những trường hợp người dùng chọn một lựa chọn hoàn toàn không giống với URL. | 
| "auto_bookmark" | Người dùng truy cập vào trang này thông qua một đề xuất trong giao diện người dùng, chẳng hạn như thông qua một mục trong trình đơn. | 
| "auto_subframe" | Điều hướng khung con. Đây là mọi nội dung được tự động tải trong một khung không phải là khung cấp cao nhất. Ví dụ: nếu một trang bao gồm nhiều khung chứa quảng cáo, thì các URL quảng cáo đó sẽ có loại chuyển đổi này. Người dùng thậm chí có thể không nhận ra nội dung trong các trang này là một khung riêng biệt, nên có thể không quan tâm đến URL (xem thêm manual_subframe). | 
| "manual_subframe" | Đối với các thao tác điều hướng trong khung phụ do người dùng yêu cầu rõ ràng và tạo các mục điều hướng mới trong danh sách quay lại/tiến. Khung hình được yêu cầu rõ ràng có lẽ quan trọng hơn khung hình được tải tự động vì người dùng có thể quan tâm đến việc khung hình được yêu cầu đã được tải. | 
| "được tạo" | Người dùng truy cập vào trang này bằng cách nhập vào thanh địa chỉ và chọn một mục không giống như URL. Ví dụ: một kết quả trùng khớp có thể có URL của một trang kết quả tìm kiếm trên Google, nhưng có thể xuất hiện với người dùng dưới dạng "Tìm kiếm trên Google về ...". Những kết quả này không hoàn toàn giống với lượt điều hướng được nhập vì người dùng không nhập hoặc nhìn thấy URL đích. Xem thêm từ khoá. | 
| "auto_toplevel" | Trang được chỉ định trong dòng lệnh hoặc là trang bắt đầu. | 
| "form_submit" | Người dùng đã điền các giá trị vào một biểu mẫu và gửi biểu mẫu đó. Xin lưu ý rằng trong một số trường hợp (chẳng hạn như khi biểu mẫu dùng tập lệnh để gửi nội dung), việc gửi biểu mẫu sẽ không dẫn đến loại chuyển đổi này. | 
| "reload" | Người dùng tải lại trang bằng cách nhấp vào nút tải lại hoặc nhấn phím Enter trong thanh địa chỉ. Tính năng khôi phục phiên và Mở lại thẻ đã đóng cũng sử dụng loại hiệu ứng chuyển đổi này. | 
| "từ khóa" | URL được tạo từ một từ khoá có thể thay thế, không phải nhà cung cấp dịch vụ tìm kiếm mặc định. Xem thêm keyword_generated. | 
| "keyword_generated" | Tương ứng với một lượt truy cập được tạo cho một từ khoá. Xem thêm từ khoá. | 
Ví dụ
Để dùng thử API này, hãy cài đặt ví dụ về history API trong kho lưu trữ chrome-extension-samples.
Loại
HistoryItem
Một đối tượng đóng gói một kết quả của truy vấn nhật ký.
Thuộc tính
- 
    idchuỗi Giá trị nhận dạng duy nhất của mặt hàng. 
- 
    lastVisitTimenumber không bắt buộc Thời điểm trang này được tải gần đây nhất, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống. 
- 
    tiêu đềchuỗi không bắt buộc Tiêu đề của trang khi được tải lần gần đây nhất. 
- 
    typedCountnumber không bắt buộc Số lần người dùng đã chuyển đến trang này bằng cách nhập địa chỉ. 
- 
    urlchuỗi không bắt buộc URL mà người dùng truy cập. 
- 
    visitCountnumber không bắt buộc Số lần người dùng chuyển đến trang này. 
Enum
"đường liên kết" 
 Người dùng truy cập vào trang này bằng cách nhấp vào một đường liên kết trên một trang khác.
"đã nhập" 
 Người dùng truy cập vào trang này bằng cách nhập URL vào thanh địa chỉ. Thao tác này cũng được dùng cho các thao tác điều hướng rõ ràng khác.
"auto_bookmark" 
 Người dùng truy cập vào trang này thông qua một đề xuất trong giao diện người dùng, chẳng hạn như thông qua một mục trong trình đơn.
"auto_subframe" 
 Người dùng truy cập vào trang này thông qua thao tác điều hướng khung phụ mà họ không yêu cầu, chẳng hạn như thông qua một quảng cáo đang tải trong một khung trên trang trước. Những thao tác này không phải lúc nào cũng tạo ra các mục mới trong trình đơn quay lại và chuyển tiếp.
"manual_subframe" 
 Người dùng truy cập vào trang này bằng cách chọn một mục trong khung phụ.
"được tạo" 
 Người dùng truy cập vào trang này bằng cách nhập vào thanh địa chỉ và chọn một mục nhập không giống như URL, chẳng hạn như một đề xuất của Google Tìm kiếm. Ví dụ: một kết quả trùng khớp có thể có URL của một trang kết quả trên Google Tìm kiếm, nhưng có thể xuất hiện với người dùng dưới dạng "Tìm kiếm ... trên Google". Những kết quả này khác với các thao tác điều hướng được nhập vì người dùng không nhập hoặc nhìn thấy URL đích. Chúng cũng liên quan đến các thao tác điều hướng bằng từ khoá.
"auto_toplevel" 
 Trang được chỉ định trong dòng lệnh hoặc là trang bắt đầu.
"form_submit" 
 Người dùng truy cập vào trang này bằng cách điền các giá trị vào một biểu mẫu rồi gửi biểu mẫu đó. Không phải tất cả các lượt gửi biểu mẫu đều sử dụng loại chuyển đổi này.
"reload" 
 Người dùng tải lại trang bằng cách nhấp vào nút tải lại hoặc nhấn phím Enter trong thanh địa chỉ. Tính năng Khôi phục phiên và Mở lại thẻ đã đóng cũng sử dụng loại hiệu ứng chuyển đổi này.
"từ khoá" 
 URL của trang này được tạo từ một từ khoá có thể thay thế, không phải nhà cung cấp dịch vụ tìm kiếm mặc định.
"keyword_generated" 
 Tương ứng với một lượt truy cập được tạo cho một từ khoá.
UrlDetails
Thuộc tính
- 
    urlchuỗi URL cho thao tác. Tham số này phải ở định dạng được trả về từ lệnh gọi đến history.search().
VisitItem
Một đối tượng đóng gói một lượt truy cập vào một URL.
Thuộc tính
- 
    idchuỗi Giá trị nhận dạng riêng biệt của history.HistoryItemtương ứng.
- 
    isLocalboolean Chrome 115 trở lênĐúng nếu lượt truy cập bắt nguồn từ thiết bị này. False nếu được đồng bộ hoá từ một thiết bị khác. 
- 
    referringVisitIdchuỗi Mã lượt truy cập của đơn vị giới thiệu. 
- 
    chuyển cảnhLoại chuyển đổi cho lượt truy cập này từ đơn vị giới thiệu. 
- 
    visitIdchuỗi Giá trị nhận dạng riêng biệt của lượt truy cập này. 
- 
    visitTimenumber không bắt buộc Thời điểm diễn ra lượt truy cập này, tính bằng mili giây kể từ thời gian bắt đầu của hệ thống. 
Phương thức
addUrl()
chrome.history.addUrl(
details: UrlDetails,
callback?: function,
): Promise<void>
Thêm một URL vào nhật ký tại thời điểm hiện tại với loại chuyển đổi là "link".
Thông số
- 
    chi tiết
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:() => void 
Giá trị trả về
- 
            Promise<void> Chrome 96 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
deleteAll()
chrome.history.deleteAll(
callback?: function,
): Promise<void>
Xoá tất cả các mục khỏi nhật ký.
Thông số
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:() => void 
Giá trị trả về
- 
            Promise<void> Chrome 96 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
deleteRange()
chrome.history.deleteRange(
range: object,
callback?: function,
): Promise<void>
Xoá tất cả các mục trong phạm vi ngày được chỉ định khỏi nhật ký. Các trang sẽ không bị xoá khỏi nhật ký trừ phi tất cả lượt truy cập đều nằm trong phạm vi này.
Thông số
- 
    phạm viđối tượng - 
    endTimesố Các mục được thêm vào nhật ký trước ngày này, được biểu thị bằng mili giây kể từ thời gian bắt đầu của hệ thống. 
- 
    startTimesố Các mục được thêm vào nhật ký sau ngày này, được biểu thị bằng mili giây kể từ thời gian bắt đầu của hệ thống. 
 
- 
    
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:() => void 
Giá trị trả về
- 
            Promise<void> Chrome 96 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
deleteUrl()
chrome.history.deleteUrl(
details: UrlDetails,
callback?: function,
): Promise<void>
Xoá tất cả các lần xuất hiện của URL đã cho khỏi nhật ký.
Thông số
- 
    chi tiết
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:() => void 
Giá trị trả về
- 
            Promise<void> Chrome 96 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
getVisits()
chrome.history.getVisits(
details: UrlDetails,
callback?: function,
): Promise<VisitItem[]>
Truy xuất thông tin về lượt truy cập vào một URL.
Thông số
- 
    chi tiết
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(results: VisitItem[]) => void - 
    kết quả
 
- 
    
Giá trị trả về
- 
            Promise<VisitItem[]> Chrome 96 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
search()
chrome.history.search(
query: object,
callback?: function,
): Promise<HistoryItem[]>
Tìm kiếm trong nhật ký thời gian truy cập gần đây nhất của mỗi trang khớp với cụm từ tìm kiếm.
Thông số
- 
    truy vấnđối tượng - 
    endTimenumber không bắt buộc Giới hạn kết quả trong những kết quả đã được truy cập trước ngày này, được biểu thị bằng mili giây kể từ thời gian bắt đầu của hệ thống. 
- 
    maxResultsnumber không bắt buộc Số lượng kết quả tối đa cần truy xuất. Giá trị mặc định là 100. 
- 
    startTimenumber không bắt buộc Giới hạn kết quả cho những địa điểm được ghé thăm sau ngày này, tính bằng mili giây kể từ thời gian bắt đầu hệ thống. Nếu bạn không chỉ định thuộc tính này, giá trị mặc định sẽ là 24 giờ. 
- 
    văn bảnchuỗi Một truy vấn bằng văn bản tự do đến dịch vụ nhật ký. Để trống trường này để truy xuất tất cả các trang. 
 
- 
    
- 
    callbackhàm không bắt buộc Tham số callbackcó dạng như sau:(results: HistoryItem[]) => void - 
    kết quả
 
- 
    
Giá trị trả về
- 
            Promise<HistoryItem[]> Chrome 96 trở lênCác promise chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại. 
Sự kiện
onVisited
chrome.history.onVisited.addListener(
callback: function,
)
Được kích hoạt khi một URL được truy cập, cung cấp dữ liệu HistoryItem cho URL đó. Sự kiện này kích hoạt trước khi trang được tải.
Thông số
- 
    callbackhàm Tham số callbackcó dạng như sau:(result: HistoryItem) => void - 
    kết quả
 
- 
    
onVisitRemoved
chrome.history.onVisitRemoved.addListener(
callback: function,
)
Kích hoạt khi một hoặc nhiều URL bị xoá khỏi nhật ký. Khi tất cả lượt truy cập đã bị xoá, URL sẽ bị xoá khỏi nhật ký.
Thông số
- 
    callbackhàm Tham số callbackcó dạng như sau:(removed: object) => void - 
    đã xóađối tượng - 
    allHistoryboolean Đúng nếu tất cả nhật ký đã bị xoá. Nếu đúng, thì URL sẽ trống. 
- 
    urlstring[] không bắt buộc 
 
- 
    
 
-