বিষয় API প্রয়োগ করুন

এই পৃষ্ঠায় Topics API কলারদের বিষয়গুলি পর্যবেক্ষণ এবং অ্যাক্সেস করার জন্য বাস্তবায়নের বিশদ ব্যাখ্যা করা হয়েছে। আপনার সমাধান বাস্তবায়ন শুরু করার আগে, নিশ্চিত করুন যে আপনার ব্রাউজারটি সঠিকভাবে সেট আপ করা আছে। কলাররা কীভাবে ব্যবহারকারীদের বিষয়গুলি পর্যবেক্ষণ এবং অ্যাক্সেস করে সে সম্পর্কে আরও জানতে ওভারভিউ বিভাগটি দেখুন।

বিষয়গুলি পর্যবেক্ষণ করুন এবং অ্যাক্সেস করুন

ব্যবহারকারীর বিষয়গুলি পর্যবেক্ষণ এবং অ্যাক্সেস করার দুটি উপায় রয়েছে: HTTP হেডার এবং JavaScript API

HTTP হেডার

ব্যবহারকারীর বিষয়গুলি পর্যবেক্ষণ এবং অ্যাক্সেস করার জন্য HTTP হেডার ব্যবহার করা একটি প্রস্তাবিত পদ্ধতি। এই পদ্ধতিটি জাভাস্ক্রিপ্ট API ব্যবহারের চেয়ে অনেক বেশি কার্যকর হতে পারে। HTTP হেডারের মাধ্যমে, অনুরোধের URL নিবন্ধনযোগ্য ডোমেন প্রদান করে যা কলার ডোমেন হিসাবে রেকর্ড করা হয়। এটি হল সেই ডোমেন যা ব্যবহারকারীর বিষয়গুলি পর্যবেক্ষণ করেছে বলে মনে করা হয়।

অনুরোধ শুরু করুন

শিরোনাম সহ Topics ব্যবহার করার দুটি উপায় আছে:

  • একটি fetch() অনুরোধে অনুরোধ এবং প্রতিক্রিয়া শিরোনাম অ্যাক্সেস করে যাতে একটি browsingTopics: true বিকল্প অন্তর্ভুক্ত থাকে।
  • একটি iframe উপাদানের জন্য হেডার অ্যাক্সেস করে যাতে একটি browsingtopics বৈশিষ্ট্য রয়েছে।
একটি ফেচ দিয়ে অনুরোধ শুরু করুন

ফেচ ব্যবহার করে, API কলার একটি অনুরোধ করে যার মধ্যে অপশন প্যারামিটারে {browsingTopics: true} অন্তর্ভুক্ত থাকে। ফেচ অনুরোধের URL প্যারামিটারের উৎপত্তি হল পর্যবেক্ষণ করা বিষয়গুলির উৎপত্তিস্থল।

   fetch('<topics_caller_eTLD+1>', { browsingTopics: true })
    .then((response) => {
        // Process the response
    });
একটি আইফ্রেম দিয়ে অনুরোধ শুরু করুন

<iframe> এলিমেন্টে browsingtopics অ্যাট্রিবিউট যোগ করুন। ব্রাউজারটি iframe এর অনুরোধে Sec-Browsing-Topics হেডার অন্তর্ভুক্ত করবে, যেখানে iframe এর অরিজিন কলার হিসেবে থাকবে।

   <iframe src="https://adtech.example" browsingtopics></iframe>

অনুরোধের শিরোনামের মান ব্যাখ্যা করুন

উভয় পদ্ধতির (fetch এবং iframe) ক্ষেত্রেই ব্যবহারকারীর পর্যবেক্ষণ করা বিষয়গুলি Sec-Browsing-Topics অনুরোধ শিরোনাম থেকে সার্ভারে পুনরুদ্ধার করা যেতে পারে। Topics API fetch() বা iframe অনুরোধে স্বয়ংক্রিয়ভাবে হেডারে ব্যবহারকারীর বিষয়গুলি অন্তর্ভুক্ত করবে। যদি API এক বা একাধিক বিষয় ফেরত দেয়, তাহলে যে উৎস থেকে বিষয়গুলি পর্যবেক্ষণ করা হয়েছিল সেই উৎসে একটি fetch অনুরোধে Sec-Browsing-Topics শিরোনাম অন্তর্ভুক্ত থাকবে:

   (325);v=chrome.1:1:1, ();p=P000000000

যদি API দ্বারা কোনও বিষয় ফেরত না দেওয়া হয়, তাহলে হেডারটি এইরকম দেখাবে:

   ();p=P0000000000000000000000000000000

পুনঃনির্দেশনা অনুসরণ করা হবে, এবং পুনঃনির্দেশ অনুরোধে প্রেরিত বিষয়গুলি পুনঃনির্দেশ URL-এর সাথে নির্দিষ্ট হবে। হেডারের দৈর্ঘ্যের উপর ভিত্তি করে আক্রমণকারীর কলারের কাছে থাকা বিষয়গুলির সংখ্যা জানার ঝুঁকি কমাতে, Sec-Browsing-Topics হেডারের মানগুলি প্যাড করা হয়েছে।

সার্ভার-সাইড রেসপন্স পরিচালনা করুন

যদি অনুরোধের প্রতিক্রিয়ায় একটি Observe-Browsing-Topics: ?1 হেডার থাকে, তাহলে এর অর্থ হল ব্রাউজারটি অনুরোধের সাথে থাকা বিষয়গুলিকে পর্যবেক্ষণ করা হিসাবে চিহ্নিত করবে এবং ব্যবহারকারীর পরবর্তী যুগের বিষয় গণনায় বর্তমান পৃষ্ঠা পরিদর্শন অন্তর্ভুক্ত করবে। আপনার সার্ভার-সাইড কোডের প্রতিক্রিয়ায় Observe-Browsing-Topics: ?1 হেডার অন্তর্ভুক্ত করবে:

   res.setHeader('Observe-Browsing-Topics', '?1');
বিষয় নির্ধারণ এবং পুনরুদ্ধারের জন্য অনুরোধ এবং প্রতিক্রিয়া শিরোনাম।
iframe এবং fetch() এর জন্য হেডার।

অংশীদারদের সাথে পর্যবেক্ষণ করা বিষয়গুলি ভাগ করুন

যেহেতু SSP-দের উপস্থিতি কেবল প্রকাশকের পক্ষ থেকে থাকে, তাই DSP-রা বিজ্ঞাপনদাতার সাইটে তাদের পর্যবেক্ষণ করা বিষয়গুলি তাদের অংশীদার SSP-দের সাথে ভাগ করে নিতে চাইতে পারেন। তারা বিজ্ঞাপনদাতার শীর্ষ-স্তরের প্রেক্ষাপট থেকে SSP-দের কাছে বিষয় শিরোনাম সহ একটি fetch() অনুরোধ করে তা করতে পারেন।

const response = await fetch("partner-ssp.example", {
 browsingTopics: true
});

জাভাস্ক্রিপ্টের সাহায্যে বিষয়গুলি পর্যবেক্ষণ করুন এবং অ্যাক্সেস করুন

Topics JavaScript API পদ্ধতি document.browsingTopics() ব্রাউজার পরিবেশের মধ্যে ব্যবহারকারীর আগ্রহের বিষয়গুলি পর্যবেক্ষণ এবং পুনরুদ্ধার করার একটি উপায় প্রদান করে: - রেকর্ড পর্যবেক্ষণ: ব্রাউজারকে জানায় যে কলার বর্তমান পৃষ্ঠায় আসা ব্যবহারকারীকে পর্যবেক্ষণ করেছেন। এই পর্যবেক্ষণ ভবিষ্যতের যুগে কলারের জন্য ব্যবহারকারীর বিষয় গণনায় অবদান রাখে। - অ্যাক্সেস বিষয়: কলার ব্যবহারকারীর জন্য পূর্বে পর্যবেক্ষণ করা বিষয়গুলি পুনরুদ্ধার করে। পদ্ধতিটি এলোমেলো ক্রমে তিনটি পর্যন্ত বিষয় বস্তুর একটি অ্যারে প্রদান করে, প্রতিটি সাম্প্রতিক যুগের জন্য একটি করে।

আমরা আপনাকে Topics JavaScript API ডেমোটি ব্যবহার করার পরামর্শ দিচ্ছি এবং এটিকে আপনার কোডের জন্য একটি সূচনা বিন্দু হিসেবে ব্যবহার করুন।

API প্রাপ্যতা

API ব্যবহার করার আগে, নিশ্চিত করুন যে এটি সমর্থিত এবং উপলব্ধ:

 if ('browsingTopics' in document && document.featurePolicy.allowsFeature('browsing-topics')) {
    console.log('document.browsingTopics() is supported on this page');
 } else {
    console.log('document.browsingTopics() is not supported on this page');
 }

একটি আইফ্রেম এম্বেড করুন

কলের জন্য একটি ক্রস-অরিজিন আইফ্রেম ব্যবহার করতে হবে, কারণ যে প্রেক্ষাপট থেকে APIটি আহ্বান করা হয়েছে তা ব্যবহার করে ব্রাউজারটি কলারের জন্য উপযুক্ত বিষয়গুলি ফেরত দেয় তা নিশ্চিত করা হয়। আপনার HTML এ একটি <iframe> উপাদান অন্তর্ভুক্ত করুন:

<iframe src="https://example.com" browsingtopics></iframe>

আপনি জাভাস্ক্রিপ্ট ব্যবহার করে গতিশীলভাবে একটি আইফ্রেমও তৈরি করতে পারেন:

 const iframe = document.createElement('iframe');
 iframe.setAttribute('src', 'https://adtech.example/');
 document.body.appendChild(iframe);

আইফ্রেমের মধ্যে থেকে API কল করুন

 try {
   // Get the array of top topics for this user.
   const topics = await document.browsingTopics();
  
   // Request an ad creative, providing topics information.
   const response = await fetch('https://ads.example/get-creative', {
   method: 'POST',
   headers: {
    'Content-Type': 'application/json',
   },
   body: JSON.stringify(topics)
   })
  
   // Get the JSON from the response.
   const creative = await response.json();
  
   // Display ad.

 } catch (error) {
   // Handle error.
 }

ডিফল্টরূপে, document.browsingTopics() পদ্ধতিটি ব্রাউজারকে কলকারীর দ্বারা পর্যবেক্ষণ করা বর্তমান পৃষ্ঠা পরিদর্শন রেকর্ড করতে বাধ্য করে, তাই এটি পরবর্তীতে বিষয় গণনায় ব্যবহার করা যেতে পারে। পৃষ্ঠা পরিদর্শন রেকর্ড করা থেকে এড়াতে পদ্ধতিটি একটি ঐচ্ছিক যুক্তি পাস করা যেতে পারে: {skipObservation:true}

 // current page won't be included in the calculation of topics:
 const topics = await document.browsingTopics({skipObservation:true});

প্রতিক্রিয়া বুঝুন

সর্বাধিক তিনটি বিষয় ফেরত দেওয়া হবে: গত তিন সপ্তাহের প্রতিটির জন্য একটি অথবা শূন্য, যা নির্ভর করে বিষয়গুলি পর্যবেক্ষণ করা হয়েছে কিনা তার উপর। কেবলমাত্র বর্তমান ব্যবহারকারীর জন্য কলকারীর দ্বারা পর্যবেক্ষণ করা বিষয়গুলি ফেরত দেওয়া হবে। API কী ফেরত দেয় তার একটি উদাহরণ এখানে দেওয়া হল:

 [{
'configVersion': chrome.2,
 'modelVersion': 4,
 'taxonomyVersion': 2,
 'topic': 309,
 'version': chrome.2:2:4
}]
  • configVersion : ব্রাউজারের বিষয় অ্যালগরিদম কনফিগারেশন সংস্করণ সনাক্তকারী একটি স্ট্রিং।
  • মডেলভার্সন : বিষয়গুলি অনুমান করতে ব্যবহৃত মেশিন-লার্নিং ক্লাসিফায়ারকে চিহ্নিত করে এমন একটি স্ট্রিং।
  • ট্যাক্সোনমি ভার্সন : ব্রাউজার দ্বারা ব্যবহৃত বিষয়গুলির সেট সনাক্তকারী একটি স্ট্রিং।
  • বিষয় : শ্রেণীবিন্যাসে বিষয় চিহ্নিতকারী একটি সংখ্যা।
  • version : একটি স্ট্রিং যা configVersion , taxonomyVersion এবং modelVersion সংযুক্ত করে। এই নির্দেশিকায় বর্ণিত প্যারামিটার এবং API এর বিশদ বিবরণ (যেমন ট্যাক্সোনমির আকার, প্রতি সপ্তাহে গণনা করা বিষয়ের সংখ্যা এবং প্রতি কলে ফিরে আসা বিষয়ের সংখ্যা) API তে ইকোসিস্টেম প্রতিক্রিয়া এবং পুনরাবৃত্তি অন্তর্ভুক্ত করার সাথে সাথে পরিবর্তিত হতে পারে।

কোন প্রতিক্রিয়া আশা করা যায় এবং আরও প্রাসঙ্গিক বিজ্ঞাপনের জন্য অতিরিক্ত সংকেত হিসেবে Topics কীভাবে ব্যবহার করবেন তা জানতে Test & go live পৃষ্ঠাটি দেখুন।

পরবর্তী পদক্ষেপ

টপিক ভিত্তিক সমাধানগুলি কীভাবে স্থাপন, পরীক্ষা এবং স্কেল করা যায় তা শিখুন।
টপিক এপিআই তথ্য দেখতে, বিষয়গুলি কীভাবে বরাদ্দ করা হয় তা বুঝতে এবং আপনার বাস্তবায়ন ডিবাগ করার জন্য Chrome-এ উপলব্ধ সরঞ্জামগুলি সম্পর্কে জানুন।

এছাড়াও দেখুন

ওয়েবে টপিক এপিআই আরও ভালভাবে বুঝতে আমাদের সংস্থানগুলি দেখুন।