Deskripsi
Gunakan chrome.history API untuk berinteraksi dengan data halaman yang dikunjungi di browser. Anda dapat menambahkan, menghapus, dan mengkueri URL di histori browser. Untuk mengganti halaman histori dengan versi Anda sendiri, lihat Mengganti Halaman.
Izin
historyUntuk berinteraksi dengan histori penjelajahan pengguna, gunakan history API.
Untuk menggunakan history API, deklarasikan izin "history" di manifes ekstensi. Contoh:
{
"name": "My extension",
...
"permissions": [
"history"
],
...
}
Konsep dan penggunaan
Jenis transisi
History API menggunakan jenis transisi untuk menjelaskan cara browser membuka URL tertentu pada kunjungan tertentu. Misalnya, jika pengguna mengunjungi halaman dengan mengklik link di halaman lain, jenis transisinya adalah "link". Lihat konten referensi untuk mengetahui daftar jenis transisi.
Contoh
Untuk mencoba API ini, instal contoh history API dari repositori chrome-extension-samples.
Jenis
HistoryItem
Objek yang mengenkapsulasi satu hasil kueri histori.
Properti
-
id
string
ID unik untuk item.
-
lastVisitTime
number opsional
Waktu terakhir halaman ini dimuat, yang dinyatakan dalam milidetik sejak epoch.
-
judul
string opsional
Judul halaman saat terakhir kali dimuat.
-
typedCount
number opsional
Frekuensi pengguna membuka halaman ini dengan mengetik alamatnya.
-
url
string opsional
URL yang dibuka oleh pengguna.
-
visitCount
number opsional
Berapa kali pengguna membuka halaman ini.
TransitionType
Jenis transisi untuk kunjungan ini dari perujuknya.
Enum
"link"
Pengguna tiba di halaman ini dengan mengklik link di halaman lain.
"typed"
Pengguna membuka halaman ini dengan mengetik URL di kolom URL. Ini juga digunakan untuk tindakan navigasi eksplisit lainnya.
"auto_bookmark"
Pengguna membuka halaman ini melalui saran di UI, misalnya, melalui item menu.
"auto_subframe"
Pengguna membuka halaman ini melalui navigasi subframe yang tidak mereka minta, seperti melalui pemuatan iklan dalam frame di halaman sebelumnya. Perubahan ini tidak selalu menghasilkan entri navigasi baru di menu kembali dan maju.
"manual_subframe"
Pengguna membuka halaman ini dengan memilih sesuatu di subframe.
"generated"
Pengguna membuka halaman ini dengan mengetik di kolom URL dan memilih entri yang tidak terlihat seperti URL, seperti saran Google Penelusuran. Misalnya, kecocokan mungkin memiliki URL halaman hasil penelusuran Google, tetapi mungkin muncul kepada pengguna sebagai "Telusuri Google untuk ...". Hal ini berbeda dengan navigasi yang diketik karena pengguna tidak mengetik atau melihat URL tujuan. Keduanya juga terkait dengan navigasi kata kunci.
"auto_toplevel"
Halaman ditentukan di command line atau merupakan halaman awal.
"form_submit"
Pengguna membuka halaman ini dengan mengisi nilai dalam formulir dan mengirimkan formulir. Tidak semua pengiriman formulir menggunakan jenis transisi ini.
"reload"
Pengguna memuat ulang halaman, baik dengan mengklik tombol muat ulang atau dengan menekan Enter di kolom URL. Pemulihan sesi dan Buka kembali tab yang ditutup juga menggunakan jenis transisi ini.
"keyword"
URL untuk halaman ini dibuat dari kata kunci yang dapat diganti selain penyedia penelusuran default.
"keyword_generated"
Sesuai dengan kunjungan yang dihasilkan untuk kata kunci.
UrlDetails
Properti
-
url
string
URL untuk operasi. Formatnya harus seperti yang ditampilkan dari panggilan ke
history.search().
VisitItem
Objek yang mengenkapsulasi satu kunjungan ke URL.
Properti
-
id
string
ID unik untuk
history.HistoryItemyang sesuai. -
isLocal
boolean
Chrome 115+ browser.* sejak Chrome 148True jika kunjungan berasal dari perangkat ini. False jika disinkronkan dari perangkat lain.
-
referringVisitId
string
ID kunjungan perujuk.
-
transisi
Jenis transisi untuk kunjungan ini dari perujuknya.
-
visitId
string
ID unik untuk kunjungan ini.
-
visitTime
number opsional
Waktu kunjungan ini terjadi, yang direpresentasikan dalam milidetik sejak epoch.
Metode
addUrl()
browser.history.addUrl(
details: UrlDetails,
): Promise<void>
Menambahkan URL ke histori pada waktu saat ini dengan jenis transisi "link".
Parameter
-
detail
Hasil
-
Promise<void>
Chrome 96+ browser.* sejak Chrome 148
deleteAll()
browser.history.deleteAll(): Promise<void>
Menghapus semua item dari histori.
Hasil
-
Promise<void>
Chrome 96+ browser.* sejak Chrome 148
deleteRange()
browser.history.deleteRange(
range: object,
): Promise<void>
Menghapus semua item dalam rentang tanggal yang ditentukan dari histori. Halaman tidak akan dihapus dari histori kecuali jika semua kunjungan berada dalam rentang tersebut.
Parameter
-
rentang
objek
-
endTime
angka
Item yang ditambahkan ke histori sebelum tanggal ini, yang dinyatakan dalam milidetik sejak epoch.
-
startTime
angka
Item yang ditambahkan ke histori setelah tanggal ini, dinyatakan dalam milidetik sejak epoch.
-
Hasil
-
Promise<void>
Chrome 96+ browser.* sejak Chrome 148
deleteUrl()
browser.history.deleteUrl(
details: UrlDetails,
): Promise<void>
Menghapus semua kemunculan URL yang diberikan dari histori.
Parameter
-
detail
Hasil
-
Promise<void>
Chrome 96+ browser.* sejak Chrome 148
getVisits()
browser.history.getVisits(
details: UrlDetails,
): Promise<VisitItem[]>
Mengambil informasi tentang kunjungan ke URL.
Parameter
-
detail
Hasil
-
Promise<VisitItem[]>
Chrome 96+ browser.* sejak Chrome 148
search()
browser.history.search(
query: object,
): Promise<HistoryItem[]>
Menelusuri histori untuk waktu kunjungan terakhir setiap halaman yang cocok dengan kueri.
Parameter
-
kueri
objek
-
endTime
number opsional
Membatasi hasil pada hasil yang dikunjungi sebelum tanggal ini, yang dinyatakan dalam milidetik sejak epoch.
-
maxResults
number opsional
Jumlah hasil maksimum yang akan diambil. Setelan defaultnya adalah 100.
-
startTime
number opsional
Batasi hasil untuk hasil yang dikunjungi setelah tanggal ini, yang dinyatakan dalam milidetik sejak epoch. Jika properti tidak ditentukan, defaultnya adalah 24 jam.
-
teks
string
Kueri teks bebas ke layanan histori. Kosongkan kolom ini untuk mengambil semua halaman.
-
Hasil
-
Promise<HistoryItem[]>
Chrome 96+ browser.* sejak Chrome 148
Acara
onVisited
browser.history.onVisited.addListener(
callback: function,
)
Diaktifkan saat URL dikunjungi, yang memberikan data HistoryItem untuk URL tersebut. Peristiwa ini diaktifkan sebelum halaman dimuat.
Parameter
-
callback
fungsi
Parameter
callbackterlihat seperti:(result: HistoryItem) => void
-
hasil
-
onVisitRemoved
browser.history.onVisitRemoved.addListener(
callback: function,
)
Diaktifkan saat satu atau beberapa URL dihapus dari histori. Jika semua kunjungan telah dihapus, URL akan dihapus permanen dari histori.
Parameter
-
callback
fungsi
Parameter
callbackterlihat seperti:(removed: object) => void
-
dihapus
objek
-
allHistory
boolean
Benar jika semua histori dihapus. Jika benar, URL akan kosong.
-
Url
string[] opsional
-
-