বর্ণনা
ডেভেলপার টুলসের নেটওয়ার্ক প্যানেলে প্রদর্শিত নেটওয়ার্ক অনুরোধ সম্পর্কিত তথ্য পুনরুদ্ধার করতে chrome.devtools.network API ব্যবহার করুন।
প্রকাশ
ডেভেলপার টুলস এপিআই ব্যবহারের সাধারণ পরিচিতির জন্য ডেভটুলস এপিআই সারাংশ দেখুন।
সংক্ষিপ্ত বিবরণ
নেটওয়ার্ক অনুরোধের তথ্য HTTP আর্কাইভ ফরম্যাটে ( HAR ) উপস্থাপন করা হয়। HAR-এর বর্ণনা এই ডকুমেন্টের আওতার বাইরে, অনুগ্রহ করে HAR v1.2 স্পেসিফিকেশন দেখুন।
HAR-এর ক্ষেত্রে, chrome.devtools.network.getHAR() মেথডটি সম্পূর্ণ HAR লগ ফেরত দেয়, অপরদিকে chrome.devtools.network.onRequestFinished ইভেন্টটি ইভেন্ট কলব্যাকে একটি আর্গুমেন্ট হিসেবে HAR এন্ট্রি প্রদান করে।
উল্লেখ্য যে, কার্যকারিতার কারণে HAR-এর অংশ হিসেবে রিকোয়েস্ট কন্টেন্ট প্রদান করা হয় না। কন্টেন্ট পুনরুদ্ধার করার জন্য আপনি রিকোয়েস্টের getContent() মেথডটি কল করতে পারেন।
পৃষ্ঠা লোড হওয়ার পরে যদি ডেভেলপার টুলস উইন্ডো খোলা হয়, তাহলে getHAR() দ্বারা ফেরত আসা এন্ট্রির অ্যারেতে কিছু অনুরোধ অনুপস্থিত থাকতে পারে। সমস্ত অনুরোধ পেতে পৃষ্ঠাটি পুনরায় লোড করুন। সাধারণত, getHAR() দ্বারা ফেরত আসা অনুরোধের তালিকাটি নেটওয়ার্ক প্যানেলে প্রদর্শিত তালিকার সাথে মিলে যাওয়া উচিত।
উদাহরণ
নিম্নলিখিত কোডটি ৪০ কেবি-র চেয়ে বড় সমস্ত ছবির ইউআরএল লোড হওয়ার সাথে সাথে লগ করে রাখে:
chrome.devtools.network.onRequestFinished.addListener(
function(request) {
if (request.response.bodySize > 40*1024) {
chrome.devtools.inspectedWindow.eval(
'console.log("Large image: " + unescape("' +
escape(request.request.url) + '"))');
}
}
);
এই API-টি ব্যবহার করার জন্য, chrome-extension-samples রিপোজিটরি থেকে devtools API উদাহরণগুলো ইনস্টল করুন।
প্রকারভেদ
Request
এটি কোনো ডকুমেন্ট রিসোর্সের (যেমন স্ক্রিপ্ট, ছবি ইত্যাদি) জন্য একটি নেটওয়ার্ক অনুরোধকে বোঝায়। বিস্তারিত তথ্যের জন্য HAR স্পেসিফিকেশন দেখুন।
বৈশিষ্ট্য
- বিষয়বস্তু পান
শূন্যতা
প্রতিশ্রুতিপ্রতিক্রিয়া বডির বিষয়বস্তু ফেরত দেয়।
getContentফাংশনটি দেখতে এইরকম:(callback?: function) => {...}
- কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(response: object) => void
- প্রতিক্রিয়া
বস্তু
বিচারাধীনএকটি অবজেক্ট, যাতে প্রতিক্রিয়া মূল অংশ এবং তার এনকোডিং থাকে।
- বিষয়বস্তু
স্ট্রিং
প্রতিক্রিয়ার মূল অংশের বিষয়বস্তু (সম্ভাব্যভাবে এনকোড করা)।
- এনকোডিং
স্ট্রিং
বিষয়বস্তু এনকোড করা না থাকলে খালি থাকবে, অন্যথায় এনকোডিং নাম থাকবে। বর্তমানে শুধু বেস৬৪ (base64) সমর্থিত।
- ফেরত
প্রতিশ্রুতি<object>
বিচারাধীনএকটি ফাংশন যা অনুরোধটি সম্পন্ন হলে প্রতিক্রিয়া মূল অংশটি গ্রহণ করে।
প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।
পদ্ধতি
getHAR()
chrome.devtools.network.getHAR(
callback?: function,
): Promise<object>
সমস্ত জ্ঞাত নেটওয়ার্ক অনুরোধ সম্বলিত HAR লগ ফেরত দেয়।
প্যারামিটার
- কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(harLog: object) => void
- হারলগ
বস্তু
একটি HAR লগ। বিস্তারিত জানতে HAR স্পেসিফিকেশন দেখুন।
ফেরত
প্রতিশ্রুতি<object>
বিচারাধীনএকটি ফাংশন যা অনুরোধটি সম্পন্ন হলে HAR লগ গ্রহণ করে।
প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।
ইভেন্টগুলি
onNavigated
chrome.devtools.network.onNavigated.addListener(
callback: function,
)
পরিদর্শন করা উইন্ডোটি যখন একটি নতুন পৃষ্ঠায় যায় তখন এটি ট্রিগার হয়।
প্যারামিটার
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(url: string) => void
স্ট্রিং
onRequestFinished
chrome.devtools.network.onRequestFinished.addListener(
callback: function,
)
যখন একটি নেটওয়ার্ক অনুরোধ সম্পন্ন হয় এবং অনুরোধের সমস্ত ডেটা উপলব্ধ থাকে, তখন এটি সক্রিয় হয়।