ब्यौरा
बुकमार्क बनाने, व्यवस्थित करने, और उनमें किसी और तरीके से बदलाव करने के लिए, chrome.bookmarks
एपीआई का इस्तेमाल करें. पेज ओवरराइड करें को भी देखें. इसका इस्तेमाल करके, अपनी पसंद के मुताबिक बुकमार्क मैनेजर पेज बनाया जा सकता है.
अनुमतियां
bookmarks
आपको "बुकमार्क" बताना होगा बुकमार्क एपीआई का इस्तेमाल करने के लिए एक्सटेंशन मेनिफ़ेस्ट में अनुमति. उदाहरण के लिए:
{
"name": "My extension",
...
"permissions": [
"bookmarks"
],
...
}
सिद्धांत और उनका इस्तेमाल
ऑब्जेक्ट और प्रॉपर्टी
बुकमार्क ट्री में व्यवस्थित किए जाते हैं, जहां ट्री का हर नोड एक बुकमार्क या फ़ोल्डर होता है (इसे कभी-कभी ग्रुप भी कहा जाता है). ट्री में हर नोड को bookmarks.BookmarkTreeNode ऑब्जेक्ट है.
chrome.bookmarks
एपीआई में, BookmarkTreeNode
प्रॉपर्टी का इस्तेमाल किया जाता है. उदाहरण के लिए, जब
bookmarks.create को कॉल करें, आप नए नोड के पैरंट (parentId
) में पास करते हैं और, वैकल्पिक रूप से,
नोड की index
, title
, और url
प्रॉपर्टी. जानकारी के लिए bookmarks.BookmarkTreeNode देखें
उन प्रॉपर्टी के बारे में, जो नोड में हो सकती हैं.
उदाहरण
यह कोड, "एक्सटेंशन बुकमार्क" टाइटल वाला एक फ़ोल्डर बनाता है. इसका पहला तर्क
create()
नए फ़ोल्डर के लिए प्रॉपर्टी के बारे में बताता है. दूसरा तर्क, फ़ंक्शन को
फ़ोल्डर बनाने के बाद चलाया जाता है.
chrome.bookmarks.create(
{'parentId': bookmarkBar.id, 'title': 'Extension bookmarks'},
function(newFolder) {
console.log("added folder: " + newFolder.title);
},
);
अगला स्निपेट, एक्सटेंशन के लिए डेवलपर दस्तावेज़ पर ले जाने वाला एक बुकमार्क बनाता है. से अगर बुकमार्क बनाना विफल हो जाता है, तो कुछ भी बुरा नहीं होगा, लेकिन यह कोड कॉलबैक फ़ंक्शन.
chrome.bookmarks.create({
'parentId': extensionsFolderId,
'title': 'Extensions doc',
'url': 'https://developer.chrome.com/docs/extensions',
});
इस एपीआई को आज़माने के लिए, chrome-extension-samples से Bookmarks API का उदाहरण इंस्टॉल करें डेटा स्टोर करने की जगह.
टाइप
BookmarkTreeNode
बुकमार्क ट्री में एक नोड (कोई बुकमार्क या फ़ोल्डर) है. चाइल्ड नोड को उनके पैरंट फ़ोल्डर में क्रम से लगाया जाता है.
प्रॉपर्टी
-
बच्चे
BookmarkTreeNode[] वैकल्पिक
इस नोड के चिल्ड्रेन की क्रम वाली सूची.
-
dateAdded
नंबर वैकल्पिक
जब यह नोड बनाया गया था, तब Epoch (
new Date(dateAdded)
) के बाद से मिलीसेकंड में. -
dateGroupModified
नंबर वैकल्पिक
जब इस फ़ोल्डर की सामग्री पिछली बार बदली गई थी, Epoch के बाद मिलीसेकंड में.
-
dateLastUsed
नंबर वैकल्पिक
Chrome 114 और उसके बाद वाले वर्शन के लिएजब इस नोड को पिछली बार खोला गया था, तो Epoch के बाद के मिलीसेकंड में. फ़ोल्डर के लिए सेट नहीं है.
-
आईडी
स्ट्रिंग
नोड के लिए यूनीक आइडेंटिफ़ायर. मौजूदा प्रोफ़ाइल में आईडी यूनीक होते हैं. ब्राउज़र के रीस्टार्ट होने के बाद भी ये मान्य रहते हैं.
-
इंडेक्स
नंबर वैकल्पिक
इस नोड की 0-आधारित स्थिति, इसके पैरंट फ़ोल्डर में है.
-
parentId
स्ट्रिंग ज़रूरी नहीं
पैरंट फ़ोल्डर का
id
. रूट नोड के लिए मिटाया गया. -
title
स्ट्रिंग
नोड के लिए दिखाया गया टेक्स्ट.
-
बदलाव नहीं किया जा सकता
"मैनेज किया जा रहा है"
ज़रूरी नहीं हैउस वजह के बारे में बताता है जिससे पता चलता है कि इस नोड में बदलाव क्यों नहीं किया जा सकता.
managed
वैल्यू से पता चलता है कि इस नोड को सिस्टम एडमिन या निगरानी में रखे गए किसी उपयोगकर्ता के संरक्षक ने कॉन्फ़िगर किया है. अगर उपयोगकर्ता और एक्सटेंशन (डिफ़ॉल्ट) के ज़रिए नोड में बदलाव किया जा सकता है, तो इसे छोड़ दिया जाता है. -
url
स्ट्रिंग ज़रूरी नहीं
वह यूआरएल जिस पर उपयोगकर्ता के बुकमार्क पर क्लिक करने के बाद नेविगेट किया जाता है. फ़ोल्डर के लिए हटाया गया.
BookmarkTreeNodeUnmodifiable
उस वजह के बारे में बताता है जिससे पता चलता है कि इस नोड में बदलाव क्यों नहीं किया जा सकता. managed
वैल्यू से पता चलता है कि इस नोड को सिस्टम एडमिन ने कॉन्फ़िगर किया था. अगर उपयोगकर्ता और एक्सटेंशन (डिफ़ॉल्ट) के ज़रिए नोड में बदलाव किया जा सकता है, तो इसे छोड़ दिया जाता है.
मान
"मैनेज किया गया"
CreateDetails
ऑब्जेक्ट को create() फ़ंक्शन में पास किया गया.
प्रॉपर्टी
-
इंडेक्स
नंबर वैकल्पिक
-
parentId
स्ट्रिंग ज़रूरी नहीं
डिफ़ॉल्ट रूप से अन्य बुकमार्क फ़ोल्डर होता है.
-
title
स्ट्रिंग ज़रूरी नहीं
-
url
स्ट्रिंग ज़रूरी नहीं
प्रॉपर्टी
MAX_SUSTAINED_WRITE_OPERATIONS_PER_MINUTE
बुकमार्क करने से जुड़ी कार्रवाइयां, अब Chrome की मदद से सीमित नहीं हैं.
मान
10,00,000
MAX_WRITE_OPERATIONS_PER_HOUR
बुकमार्क करने से जुड़ी कार्रवाइयां, अब Chrome की मदद से सीमित नहीं हैं.
मान
10,00,000
तरीके
create()
chrome.bookmarks.create(
bookmark: CreateDetails,
callback?: function,
)
दिए गए parentId के तहत बुकमार्क या फ़ोल्डर बनाता है. अगर यूआरएल शून्य है या मौजूद नहीं है, तो यह एक फ़ोल्डर होगा.
पैरामीटर
-
बुकमार्क
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(result: BookmarkTreeNode) => void
-
नतीजा
-
रिटर्न
-
Promise<BookmarkTreeNode>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
get()
chrome.bookmarks.get(
idOrIdList: string | [string, ...string[]],
callback?: function,
)
तय किए गए BookmarkTreeNode(s) को हासिल करता है.
पैरामीटर
-
idOrIdList
string | [स्ट्रिंग, ...स्ट्रिंग[]]
स्ट्रिंग की वैल्यू वाला सिंगल आईडी या स्ट्रिंग की वैल्यू वाले आईडी का कलेक्शन
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(results: BookmarkTreeNode[]) => void
-
नतीजे
-
रिटर्न
-
Promise<BookmarkTreeNode[]>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
getChildren()
chrome.bookmarks.getChildren(
id: string,
callback?: function,
)
तय किए गए BookmarkTreeNode आईडी के चिल्ड्रेन को वापस लाता है.
पैरामीटर
-
आईडी
स्ट्रिंग
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(results: BookmarkTreeNode[]) => void
-
नतीजे
-
रिटर्न
-
Promise<BookmarkTreeNode[]>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
getRecent()
chrome.bookmarks.getRecent(
numberOfItems: number,
callback?: function,
)
हाल ही में जोड़े गए बुकमार्क वापस लाता है.
पैरामीटर
-
numberOfItems
संख्या
लौटाए जाने वाले सामान की ज़्यादा से ज़्यादा संख्या.
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(results: BookmarkTreeNode[]) => void
-
नतीजे
-
रिटर्न
-
Promise<BookmarkTreeNode[]>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
getSubTree()
chrome.bookmarks.getSubTree(
id: string,
callback?: function,
)
तय किए गए नोड से शुरू करते हुए, बुकमार्क की हैरारकी का कुछ हिस्सा फिर से लाता है.
पैरामीटर
-
आईडी
स्ट्रिंग
वापस पाने के लिए, सबट्री के रूट का आईडी.
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(results: BookmarkTreeNode[]) => void
-
नतीजे
-
रिटर्न
-
Promise<BookmarkTreeNode[]>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
getTree()
chrome.bookmarks.getTree(
callback?: function,
)
बुकमार्क की पूरी हैरारकी को हासिल करता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(results: BookmarkTreeNode[]) => void
-
नतीजे
-
रिटर्न
-
Promise<BookmarkTreeNode[]>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
move()
chrome.bookmarks.move(
id: string,
destination: object,
callback?: function,
)
दर्ज किए गए BookmarkTreeNode को, दी गई जगह पर ले जाता है.
पैरामीटर
-
आईडी
स्ट्रिंग
-
डेस्टिनेशन
ऑब्जेक्ट
-
इंडेक्स
नंबर वैकल्पिक
-
parentId
स्ट्रिंग ज़रूरी नहीं
-
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(result: BookmarkTreeNode) => void
-
नतीजा
-
रिटर्न
-
Promise<BookmarkTreeNode>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
remove()
chrome.bookmarks.remove(
id: string,
callback?: function,
)
बुकमार्क या खाली बुकमार्क फ़ोल्डर हटाता है.
पैरामीटर
-
आईडी
स्ट्रिंग
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
प्रॉमिस<void>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
removeTree()
chrome.bookmarks.removeTree(
id: string,
callback?: function,
)
बुकमार्क फ़ोल्डर को बार-बार हटाता है.
पैरामीटर
-
आईडी
स्ट्रिंग
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
प्रॉमिस<void>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
search()
chrome.bookmarks.search(
query: string | object,
callback?: function,
)
दी गई क्वेरी से मिलते-जुलते BookmarkTreeNodes को खोजता है. किसी ऑब्जेक्ट के साथ तय की गई क्वेरी, सभी खास प्रॉपर्टी से मेल खाने वाले BookmarkTreeNodes जनरेट करती हैं.
पैरामीटर
-
क्वेरी
string | ऑब्जेक्ट
शब्दों और कोट किए गए ऐसे वाक्यांशों की स्ट्रिंग जिनका मिलान बुकमार्क यूआरएल और टाइटल से किया जाता है या किसी ऑब्जेक्ट. अगर कोई ऑब्जेक्ट है, तो
query
,url
, औरtitle
प्रॉपर्टी तय की जा सकती हैं. साथ ही, सभी प्रॉपर्टी से मेल खाने वाले बुकमार्क जनरेट किए जाएंगे.-
क्वेरी
स्ट्रिंग ज़रूरी नहीं
शब्दों और कोट किए गए वाक्यांशों की स्ट्रिंग, जो बुकमार्क यूआरएल और टाइटल से मेल खाते हैं.
-
title
स्ट्रिंग ज़रूरी नहीं
बुकमार्क का टाइटल; शब्दों से मेल खाता हो.
-
url
स्ट्रिंग ज़रूरी नहीं
बुकमार्क का यूआरएल; शब्दों से मेल खाता हो. ध्यान दें कि फ़ोल्डर में कोई यूआरएल नहीं होता.
-
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(results: BookmarkTreeNode[]) => void
-
नतीजे
-
रिटर्न
-
Promise<BookmarkTreeNode[]>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
update()
chrome.bookmarks.update(
id: string,
changes: object,
callback?: function,
)
यह बुकमार्क या फ़ोल्डर की प्रॉपर्टी अपडेट करता है. सिर्फ़ उन प्रॉपर्टी के बारे में बताएं जिनमें बदलाव करना है; जिन प्रॉपर्टी की जानकारी नहीं दी गई है उन्हें बदला नहीं जाएगा. ध्यान दें: फ़िलहाल, सिर्फ़ 'टाइटल' और 'url' समर्थित हैं.
पैरामीटर
-
आईडी
स्ट्रिंग
-
बदलाव
ऑब्जेक्ट
-
title
स्ट्रिंग ज़रूरी नहीं
-
url
स्ट्रिंग ज़रूरी नहीं
-
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(result: BookmarkTreeNode) => void
-
नतीजा
-
रिटर्न
-
Promise<BookmarkTreeNode>
Chrome 90 और उसके बाद के वर्शनमेनिफ़ेस्ट V3 और उसके बाद के वर्शन में प्रॉमिस काम करते हैं. हालांकि, कॉलबैक की सुविधा इन मामलों में दी जाती है पुराने सिस्टम के साथ काम करने की सुविधा. एक ही फ़ंक्शन कॉल में दोनों का इस्तेमाल नहीं किया जा सकता. कॉन्टेंट बनाने प्रॉमिस उसी टाइप के साथ ठीक होता है जिसे कॉलबैक में पास किया जाता है.
इवेंट
onChanged
chrome.bookmarks.onChanged.addListener(
callback: function,
)
किसी बुकमार्क या फ़ोल्डर में बदलाव होने पर सक्रिय होता है. ध्यान दें: फ़िलहाल, सिर्फ़ टाइटल और यूआरएल में बदलाव करने पर यह ट्रिगर होता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(id: string, changeInfo: object) => void
-
आईडी
स्ट्रिंग
-
changeInfo
ऑब्जेक्ट
-
title
स्ट्रिंग
-
url
स्ट्रिंग ज़रूरी नहीं
-
-
onChildrenReordered
chrome.bookmarks.onChildrenReordered.addListener(
callback: function,
)
तब ट्रिगर होता है, जब यूज़र इंटरफ़ेस (यूआई) में ऑर्डर को क्रम से लगाए जाने की वजह से, फ़ोल्डर के चिल्ड्रेन ने अपना ऑर्डर बदला हो. इसे shift() के नतीजे के तौर पर कॉल नहीं किया जाता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(id: string, reorderInfo: object) => void
-
आईडी
स्ट्रिंग
-
reorderInfo
ऑब्जेक्ट
-
childIds
स्ट्रिंग[]
-
-
onCreated
chrome.bookmarks.onCreated.addListener(
callback: function,
)
कोई बुकमार्क या फ़ोल्डर बनाए जाने पर सक्रिय होता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(id: string, bookmark: BookmarkTreeNode) => void
-
आईडी
स्ट्रिंग
-
बुकमार्क
-
onImportBegan
chrome.bookmarks.onImportBegan.addListener(
callback: function,
)
बुकमार्क इंपोर्ट सेशन शुरू होने पर सक्रिय होता है. महंगे ऑब्ज़र्वर को oncreated अपडेट को तब तक अनदेखा करना चाहिए जब तक onImportEnded को सक्रिय नहीं किया जाता. ऑब्ज़र्वर को अब भी दूसरी सूचनाओं को तुरंत मैनेज करना चाहिए.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:() => void
onImportEnded
chrome.bookmarks.onImportEnded.addListener(
callback: function,
)
बुकमार्क इंपोर्ट सेशन के खत्म होने पर सक्रिय होता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:() => void
onMoved
chrome.bookmarks.onMoved.addListener(
callback: function,
)
किसी बुकमार्क या फ़ोल्डर को किसी दूसरे पैरंट फ़ोल्डर में ले जाने पर ट्रिगर होता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(id: string, moveInfo: object) => void
-
आईडी
स्ट्रिंग
-
moveInfo
ऑब्जेक्ट
-
इंडेक्स
संख्या
-
oldIndex
संख्या
-
oldParentId
स्ट्रिंग
-
parentId
स्ट्रिंग
-
-
onRemoved
chrome.bookmarks.onRemoved.addListener(
callback: function,
)
किसी बुकमार्क या फ़ोल्डर को हटाए जाने पर सक्रिय होता है. जब किसी फ़ोल्डर को बार-बार हटाया जाता है, तो फ़ोल्डर के लिए सिर्फ़ एक सूचना ट्रिगर होती है. इसके कॉन्टेंट के लिए कोई सूचना नहीं भेजी जाती.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(id: string, removeInfo: object) => void
-
आईडी
स्ट्रिंग
-
removeInfo
ऑब्जेक्ट
-
इंडेक्स
संख्या
-
नोडChrome 48 और उसके बाद वाले वर्शन के लिए
-
parentId
स्ट्रिंग
-
-