תיאור
צריך להשתמש ב-API chrome.dns
לרזולוציית DNS.
הרשאות
dns
זמינות
כדי להשתמש ב-API הזה, צריך להצהיר על ההרשאה "dns"
במניפסט.
{
"name": "My extension",
...
"permissions": [
"dns"
],
...
}
שימוש
הקוד הבא מפעיל את הפקודה resolve()
כדי לאחזר את כתובת ה-IP של example.com
.
service-worker.js:
const resolveDNS = async () => {
let record = await chrome.dns.resolve('example.com');
console.log(record.address); // "192.0.2.172"
};
resolveDNS();
סוגים
ResolveCallbackResolveInfo
מאפיינים
-
כתובת
מחרוזת אופציונלי
מחרוזת שמייצגת את הליטרל של כתובת ה-IP. זמין רק אם resultCode מציין הצלחה.
-
resultCode
number
קוד התוצאה. אפס מציין הצלחה.
שיטות
resolve()
chrome.dns.resolve(
hostname: string,
callback?: function,
)
הפונקציה פותרת את הבעיה בליטרל של שם המארח או כתובת ה-IP הנתונים.
פרמטרים
-
hostname
מחרוזת
שם המארח שצריך לפענח.
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(resolveInfo: ResolveCallbackResolveInfo) => void
-
resolveInfo
-
החזרות
-
Promise<ResolveCallbackResolveInfo>
הבטחות נתמכות במניפסט מגרסה V3 ואילך, אבל ניתנות קריאות חוזרות (callback) בשביל תאימות לאחור. לא ניתן להשתמש בשתיהן באותה בקשה להפעלת פונקציה. ההבטחה הזו מצליחה לפתור את הבעיה באותו סוג שמועבר לקריאה החוזרת.