chrome.history

ब्यौरा

ब्राउज़र के देखे गए पेजों के रिकॉर्ड के साथ इंटरैक्ट करने के लिए, chrome.history एपीआई का इस्तेमाल करें. ब्राउज़र के इतिहास में जाकर, यूआरएल जोड़े जा सकते हैं, हटाए जा सकते हैं, और उनके लिए क्वेरी की जा सकती है. इतिहास पेज को अपने वर्शन से बदलने के लिए, पेज बदलना लेख पढ़ें.

अनुमतियां

history

उपयोगकर्ता के ब्राउज़र इतिहास से इंटरैक्ट करने के लिए, इतिहास एपीआई का इस्तेमाल करें.

इतिहास एपीआई का इस्तेमाल करने के लिए, एक्सटेंशन मेनिफ़ेस्ट में "history" की अनुमति का एलान करें. इसके लिए उदाहरण:

{
  "name": "My extension",
  ...
  "permissions": [
    "history"
  ],
  ...
}

सिद्धांत और उनका इस्तेमाल

ट्रांज़िशन के टाइप

इतिहास एपीआई, ट्रांज़िशन टाइप का इस्तेमाल यह बताने के लिए करता है कि ब्राउज़र किसी खास यूआरएल पर कैसे नेविगेट करता है एक खास विज़िट पर. उदाहरण के लिए, अगर कोई उपयोगकर्ता किसी अन्य पेज पर दिए गए लिंक पर क्लिक करके उस पेज पर जाता है, ट्रांज़िशन टाइप "लिंक" है. इनकी सूची के लिए संदर्भ सामग्री देखें ट्रांज़िशन टाइप हैं.

उदाहरण

इस एपीआई को आज़माने के लिए, chrome-extension-samples से इतिहास एपीआई का उदाहरण इंस्टॉल करें डेटा स्टोर करने की जगह.

टाइप

HistoryItem

ऐसा ऑब्जेक्ट जिसमें इतिहास क्वेरी के एक नतीजे को इनकैप्सुलेट किया जाता है.

प्रॉपर्टी

  • आईडी

    स्ट्रिंग

    आइटम के लिए यूनीक आइडेंटिफ़ायर.

  • lastVisitTime

    नंबर वैकल्पिक

    जब यह पेज पिछली बार लोड हुआ था, तब इसे epoch के बाद मिलीसेकंड में दिखाया जाता है.

  • title

    स्ट्रिंग ज़रूरी नहीं

    पेज का वह टाइटल जब इसे पिछली बार लोड किया गया था.

  • typedCount

    नंबर वैकल्पिक

    पता टाइप करके उपयोगकर्ता ने इस पेज पर कितनी बार नेविगेट किया है.

  • url

    स्ट्रिंग ज़रूरी नहीं

    वह यूआरएल जिसे उपयोगकर्ता ने नेविगेट किया है.

  • visitCount

    नंबर वैकल्पिक

    उपयोगकर्ता इस पेज पर कितनी बार गया.

TransitionType

Chrome 44 और उसके बाद वाले वर्शन के लिए

इस विज़िट के लिए रेफ़रर से मिला ट्रांज़िशन टाइप.

Enum

"link"
उपयोगकर्ता किसी दूसरे पेज पर मौजूद लिंक पर क्लिक करके इस पेज पर आया है.

"typed"
उपयोगकर्ता, पता बार में यूआरएल टाइप करके इस पेज पर पहुंचे. इसका इस्तेमाल नेविगेशन से जुड़ी अन्य कार्रवाइयों के लिए भी किया जाता है.

"auto_bookmark"
उपयोगकर्ता इस पेज पर यूज़र इंटरफ़ेस में दिए गए सुझाव के ज़रिए आया है, उदाहरण के लिए, मेन्यू आइटम के ज़रिए.

"auto_subframe"
उपयोगकर्ता इस पेज पर उस सबफ़्रेम नेविगेशन के ज़रिए पहुंचे जिसके लिए उन्होंने अनुरोध नहीं किया है. जैसे, पिछले पेज पर किसी फ़्रेम में विज्ञापन लोड होने से. इनकी वजह से, बैक और फ़ॉरवर्ड मेन्यू में हमेशा नई नेविगेशन एंट्री जनरेट नहीं होती.

"manual_subframe"
उपयोगकर्ता किसी सबफ़्रेम में कुछ चुनकर ही इस पेज पर आया है.

"Generate"
उपयोगकर्ता इस पेज पर आया. इसके लिए, उपयोगकर्ता ने पता बार में टाइप किया. इसके बाद, उसने ऐसी एंट्री चुनी जो यूआरएल जैसी नहीं दिखती थी, जैसे कि Google Search का कोई सुझाव. उदाहरण के लिए, किसी मैच में Google Search के नतीजों के पेज का यूआरएल हो सकता है, लेकिन वह उपयोगकर्ता को "Google पर खोजें ..." के तौर पर दिख सकता है. ये टाइप किए गए नेविगेशन से अलग होते हैं, क्योंकि उपयोगकर्ता ने डेस्टिनेशन यूआरएल (विज्ञापन के लैंडिंग पेज का यूआरएल) टाइप नहीं किया या न ही देखा. ये कीवर्ड, नेविगेशन पर भी लागू होते हैं.

"auto_toplevel"
पेज कमांड लाइन में बताया गया था या यह स्टार्ट पेज है.

"form_submit"
उपयोगकर्ता, फ़ॉर्म में वैल्यू भरकर और फ़ॉर्म सबमिट करके इस पेज पर पहुंचे. सभी फ़ॉर्म सबमिशन में, इस तरह के ट्रांज़िशन का इस्तेमाल नहीं किया जाता.

"फिर से लोड करें"
उपयोगकर्ता ने पेज को फिर से लोड किया. इसके लिए, 'फिर से लोड करें' बटन पर क्लिक करें या पता बार में Enter दबाएं. सेशन को पहले जैसा करने और बंद किए गए टैब को फिर से खोलने के लिए भी, इस ट्रांज़िशन टाइप का इस्तेमाल किया जाता है.

"कीवर्ड"
इस पेज का यूआरएल, बदले जा सकने वाले कीवर्ड से जनरेट किया गया था. यह डिफ़ॉल्ट सर्च प्रोवाइडर से नहीं था.

"keyword_generate"
किसी कीवर्ड के लिए जनरेट हुई विज़िट से मेल खाता है.

UrlDetails

Chrome 88 और उसके बाद के वर्शन

प्रॉपर्टी

  • url

    स्ट्रिंग

    कार्रवाई का यूआरएल. यह history.search() पर किए गए कॉल के फ़ॉर्मैट में होना चाहिए.

VisitItem

ऐसा ऑब्जेक्ट जो यूआरएल पर एक विज़िट को एन्क्रिप्ट (सुरक्षित) करता है.

प्रॉपर्टी

  • आईडी

    स्ट्रिंग

    इससे जुड़े history.HistoryItem के लिए यूनीक आइडेंटिफ़ायर.

  • isLocal

    बूलियन

    Chrome 115 और उसके बाद वाले वर्शन

    अगर इस डिवाइस से विज़िट की गई है, तो वैल्यू 'सही' होगी. गलत है, अगर इसे किसी दूसरे डिवाइस से सिंक किया गया था.

  • referringVisitId

    स्ट्रिंग

    रेफ़रर का विज़िट आईडी.

  • ट्रांज़िशन

    इस विज़िट के लिए रेफ़रर से मिला ट्रांज़िशन टाइप.

  • visitId

    स्ट्रिंग

    इस विज़िट के लिए यूनीक आइडेंटिफ़ायर.

  • visitTime

    नंबर वैकल्पिक

    यह विज़िट कब हुई, इसे epoch के बाद मिलीसेकंड में दिखाया जाता है.

तरीके

addUrl()

प्रॉमिस
chrome.history.addUrl(
  details: UrlDetails,
  callback?: function,
)

इससे मौजूदा समय के इतिहास में, "लिंक" के ट्रांज़िशन के टाइप के साथ एक यूआरएल जोड़ा जाता है.

पैरामीटर

  • विवरण
  • कॉलबैक

    फ़ंक्शन वैकल्पिक

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • प्रॉमिस<void>

    Chrome 96 और उसके बाद के वर्शन

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

deleteAll()

प्रॉमिस
chrome.history.deleteAll(
  callback?: function,
)

इतिहास से सभी आइटम मिटा दिए जाते हैं.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • प्रॉमिस<void>

    Chrome 96 और उसके बाद के वर्शन

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

deleteRange()

प्रॉमिस
chrome.history.deleteRange(
  range: object,
  callback?: function,
)

इतिहास से, तय तारीख की सीमा के अंदर के सभी आइटम हटा देता है. पेजों को इतिहास से तब तक नहीं हटाया जाएगा, जब तक सभी विज़िट इस सीमा में नहीं आतीं.

पैरामीटर

  • सीमा

    ऑब्जेक्ट

    • endTime

      संख्या

      इस तारीख से पहले के इतिहास में जोड़े गए आइटम, जो समय के बाद से मिलीसेकंड में दिखाए जाते हैं.

    • startTime

      संख्या

      इस तारीख के बाद के इतिहास में जोड़े गए आइटम, जो epoch के बाद से मिलीसेकंड में दिखाए जाते हैं.

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • प्रॉमिस<void>

    Chrome 96 और उसके बाद के वर्शन

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

deleteUrl()

प्रॉमिस
chrome.history.deleteUrl(
  details: UrlDetails,
  callback?: function,
)

इतिहास से दिए गए यूआरएल की सभी घटनाएं हटा देता है.

पैरामीटर

  • विवरण
  • कॉलबैक

    फ़ंक्शन वैकल्पिक

    callback पैरामीटर ऐसा दिखता है:

    () => void

रिटर्न

  • प्रॉमिस<void>

    Chrome 96 और उसके बाद के वर्शन

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

getVisits()

प्रॉमिस
chrome.history.getVisits(
  details: UrlDetails,
  callback?: function,
)

किसी यूआरएल पर हुई विज़िट की जानकारी हासिल करता है.

पैरामीटर

  • विवरण
  • कॉलबैक

    फ़ंक्शन वैकल्पिक

    callback पैरामीटर ऐसा दिखता है:

    (results: VisitItem[]) => void

रिटर्न

  • Promise&lt;VisitItem[]&gt;

    Chrome 96 और उसके बाद के वर्शन

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

प्रॉमिस
chrome.history.search(
  query: object,
  callback?: function,
)

क्वेरी से मेल खाने वाले हर पेज के आखिरी विज़िट के समय का इतिहास खोजता है.

पैरामीटर

  • क्वेरी

    ऑब्जेक्ट

    • endTime

      नंबर वैकल्पिक

      इस तारीख से पहले विज़िट किए गए नतीजों को सीमित करें, जो Epoch के बाद से मिलीसेकंड में दिखाए जाते हैं.

    • ज़्यादा से ज़्यादा नतीजे

      नंबर वैकल्पिक

      वापस लाने के लिए, नतीजों की ज़्यादा से ज़्यादा संख्या. डिफ़ॉल्ट तौर पर, यह 100 पर सेट होता है.

    • startTime

      नंबर वैकल्पिक

      इस तारीख के बाद विज़िट किए गए नतीजों को सीमित करें, जो Epoch के बाद मिलीसेकंड में दिखाया जाता है. अगर प्रॉपर्टी की जानकारी नहीं दी गई है, तो डिफ़ॉल्ट तौर पर यह 24 घंटे पर सेट होगी.

    • टेक्स्ट

      स्ट्रिंग

      इतिहास सेवा के लिए मुफ़्त-टेक्स्ट क्वेरी. सभी पेजों को वापस लाने के लिए, इसे खाली छोड़ें.

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

    callback पैरामीटर ऐसा दिखता है:

    (results: HistoryItem[]) => void

रिटर्न

  • Promise&lt;HistoryItem[]&gt;

    Chrome 96 और उसके बाद के वर्शन

    मेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.

इवेंट

onVisited

chrome.history.onVisited.addListener(
  callback: function,
)

किसी यूआरएल के देखे जाने पर ट्रिगर होता है, जिससे उस यूआरएल के लिए HistoryItem का डेटा मिलता है. यह इवेंट, पेज के लोड होने से पहले ट्रिगर होता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (result: HistoryItem) => void

onVisitRemoved

chrome.history.onVisitRemoved.addListener(
  callback: function,
)

इतिहास से एक या उससे ज़्यादा यूआरएल हटाए जाने पर सक्रिय होता है. सभी विज़िट को हटाए जाने के बाद, यूआरएल को इतिहास से पूरी तरह मिटा दिया जाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (removed: object) => void

    • निकाला गया

      ऑब्जेक्ट

      • allHistory

        बूलियन

        अगर पूरा इतिहास हटा दिया गया था, तो सही है. अगर सही है, तो यूआरएल खाली होंगे.

      • यूआरएल

        स्ट्रिंग[] ज़रूरी नहीं