Tìm hiểu cách đăng ký nguồn để phân bổ lượt nhấp và lượt xem cho các sự kiện thích hợp.
Nguồn phân bổ là một sự kiện liên quan đến quảng cáo (lượt nhấp hoặc lượt xem), mà công nghệ quảng cáo có thể đính kèm các loại thông tin sau:
- Dữ liệu báo cáo theo bối cảnh, chẳng hạn như mã mẫu quảng cáo, thông tin về chiến dịch hoặc vị trí địa lý.
- Đích đến của lượt chuyển đổi, chẳng hạn như trang web mà bạn muốn người dùng chuyển đổi.
Bằng cách làm theo các bước trong tài liệu này, bạn có thể đăng ký các nguồn (lượt hiển thị hoặc lượt nhấp vào quảng cáo) mà sau đó trình duyệt sẽ phân bổ lượt chuyển đổi.
Phương thức đăng ký
Để đăng ký nguồn phân bổ, hãy sử dụng các phần tử HTML hoặc lệnh gọi JavaScript:
- Thẻ
<a>
- Thẻ
<img>
- Thẻ
<script>
fetch
cuộc gọiXMLHttpRequest
window.open
cuộc gọi
Thao tác này sẽ tạo các yêu cầu mạng mà bạn sẽ phản hồi bằng tiêu đề phản hồi HTTP đăng ký nguồn.
Đăng ký nguồn cho lượt nhấp hoặc lượt xem
Để đăng ký nguồn phân bổ cho lượt nhấp hoặc lượt xem, hãy làm theo các bước được nêu tại đây. Sau đây là các bước hoàn chỉnh. Sau đây là thông tin tóm tắt:
- Bắt đầu đăng ký nguồn. Sử dụng phần tử HTML hoặc lệnh gọi JavaScript để đưa ra yêu cầu. Bước này sẽ khác nhau đối với lượt nhấp và lượt xem, như bạn sẽ thấy trong các phần sau.
Hoàn tất quy trình đăng ký nguồn bằng cách phản hồi bằng tiêu đề đăng ký nguồn. Khi nhận được yêu cầu đó, hãy phản hồi bằng tiêu đề
Attribution-Reporting-Register-Source
. Trong tiêu đề đó, hãy chỉ định cấu hình Báo cáo phân bổ đã chọn. Bước này giống nhau đối với cả lượt nhấp và lượt xem.Ví dụ về báo cáo tóm tắt:
{ "aggregation_keys": { "campaignCounts": "0x159", "geoValue": "0x5" }, "aggregatable_report_window": "86400", "destination": "https://example.com" }
Ví dụ về báo cáo cấp sự kiện:
{ "source_event_id": "12340873456", "destination": "[eTLD+1]", "expiry": "[64-bit signed integer]", "priority": "[64-bit signed integer]", "event_report_window": "[64-bit signed integer]" }
Thuộc tính bắt buộc và không bắt buộc
Khi sử dụng các phần tử HTML hoặc thực hiện lệnh gọi JavaScript để đăng ký nguồn, bạn có thể cần sử dụng attributionsrc
hoặc attributionReporting
. Hãy tham khảo bảng sau để biết thông tin chi tiết về thời điểm cần có các thông tin này.
Khi attributionsrc
là không bắt buộc, việc sử dụng thuộc tính này cho biết rằng yêu cầu đó đủ điều kiện để sử dụng Báo cáo phân bổ. Nếu bạn sử dụng attributionsrc
, trình duyệt sẽ gửi tiêu đề Attribution-Reporting-Eligible
. Phương thức này cũng hữu ích cho việc đo lường ứng dụng với web: nếu có attributionsrc
, trình duyệt sẽ gửi tiêu đề Attribution-Reporting-Support
.
Phương thức đăng ký | Nguồn |
---|---|
Thẻ <a> |
(navigation source)attributionsrc là bắt buộc. |
Thẻ <img> |
(nguồn sự kiện)attributionsrc là bắt buộc. |
Thẻ <script> |
(nguồn sự kiện)attributionsrc là bắt buộc. |
fetch cuộc gọi |
Bạn bắt buộc phải sử dụng tuỳ chọn attributionReporting . |
XMLHttpRequest |
Bạn bắt buộc phải sử dụng tuỳ chọn attributionReporting . |
window.open cuộc gọi |
(navigation source)attributionsrc là bắt buộc. |
Bước 1: Bắt đầu đăng ký nguồn
Bước 1 sẽ khác nhau đối với số lượt nhấp và số lượt xem.
Để đăng ký nguồn phân bổ cho một lượt nhấp, bạn có thể sử dụng thẻ <a>
hoặc window.open()
JavaScript.
Sử dụng neo
Thêm attributionsrc
vào các thẻ <a>
hiện có mà bạn muốn đo lường số lượt hiển thị hoặc số lượt nhấp:
<a href="https://shoes.example/..." attributionsrc>Click me</a>
Xem mã ví dụ để biết thêm thông tin.
Sử dụng tập lệnh
Gọi window.open()
bằng attributionsrc
:
window.open(
"https://shoes.example/...",
"_blank",
"attributionsrc");
Để được tính đến, phương thức này phải được gọi trong vòng 5 giây kể từ khi người dùng tương tác.
Thay vì tự thêm attributionsrc
, đối với hình ảnh hoặc tập lệnh, bạn có thể chỉ định một giá trị URL duy nhất:
<a href=... attributionsrc="https://a.example/register-source">Click me</a>
Trong trường hợp JavaScript, nếu bạn cung cấp giá trị cho attributionsrc
, hãy nhớ mã hoá URL đó trong trường hợp URL đó chứa các ký tự đặc biệt như =
khiến tham số bị phân tích cú pháp không đúng cách.
Mã hoá như sau:
const encodedUrl = encodeURIComponent(
"https://adtech.example/attribution_source?ad_id=...");
window.open(
"https://shoes.example/landing",
"_blank",
`attributionsrc=${encodedUrl}`);
attributionsrc
cũng có thể nhận danh sách URL được phân tách bằng dấu cách như minh hoạ ở đây bằng thẻ <a>
:
<a href=... attributionsrc="https://a.example/register-source
https://b.example/register-source">Click me</a>
hoặc như ở đây sử dụng window.open()
.
window.open("...", "_blank", `attributionsrc=${encodedUrl1}
attributionsrc=${encodedUrl2}`)
Trong những trường hợp như vậy, cả hai URL đều nhận được các yêu cầu attributionsrc
đủ điều kiện nguồn điều hướng (các yêu cầu bao gồm tiêu đề Attribution-Reporting-Eligible
).
attributionsrc
có hoặc không có giá trị
Như đã thấy trước đó, bạn có thể chỉ định attributionsrc
mà không cần URL. Bạn cũng có thể chỉ định một URL duy nhất. Ngoài ra, bạn có thể sử dụng danh sách URL được phân tách bằng dấu cách.
Việc sử dụng URL sẽ khiến trình duyệt bắt đầu một yêu cầu tìm nạp keepalive riêng biệt (một yêu cầu cho mỗi URL) bao gồm tiêu đề yêu cầu Attribution-Reporting-Eligible
.
Điều này rất hữu ích nếu bạn muốn đăng ký nguồn bằng cách phản hồi một yêu cầu tách biệt với yêu cầu chính của phần tử.
Ví dụ: nếu cần đăng ký nguồn cho các lượt nhấp vào phần tử neo, bạn có thể không thực sự kiểm soát được đích đến; trong trường hợp này, bạn sẽ muốn có một cấu hình mà theo đó bạn gửi tiêu đề đăng ký nguồn dưới dạng phản hồi cho một yêu cầu tách biệt với thao tác điều hướng và bạn có thể kiểm soát hoàn toàn. Bằng cách chỉ định một giá trị rõ ràng cho attributionsrc
, bạn đang hướng dẫn trình duyệt thực hiện yêu cầu bổ sung đó và định cấu hình đích đến của yêu cầu.
Để đăng ký nguồn phân bổ cho một thành phần hiển thị, bạn có thể sử dụng thẻ hình ảnh hoặc tập lệnh mà bạn sẽ thêm thuộc tính attributionsrc
.
Ngoài ra, bạn có thể sử dụng JavaScript fetch()
hoặc XMLHttpRequest()
.
Có hình ảnh
<img attributionsrc
src="https://adtech.example/attribution_source?ad_id=...">
Có tập lệnh
<script attributionsrc
src="https://adtech.example/attribution_source?ad_id=..."></script>
Nếu muốn, bạn có thể chỉ định giá trị URL cho attributionsrc
theo cách tương tự như đối với lượt nhấp; tức là đối với hình ảnh hoặc tập lệnh, bạn có thể đặt URL hoặc URL attributionsrc
như sau:
Với một URL:
<img attributionsrc="https://adtech.example/attribution_source?ad_id=123">
Với danh sách URL:
<img attributionsrc="https://a.example/register-source
https://b.example/register-source">
Sử dụng fetch()
hoặc XMLHttpRequest()
Mã này mô phỏng hiệu quả những gì một yêu cầu HTML với attributionsrc
sẽ thực hiện:
const attributionReporting = {
eventSourceEligible: true,
triggerEligible: false,
};
// Optionally set keepalive to make sure the request outlives the page.
window.fetch("https://adtech.example/attribution_source?my_ad_id=123",
{ keepalive: true, attributionReporting });
const attributionReporting = {
eventSourceEligible: true,
triggerEligible: false,
};
const req = new XMLHttpRequest();
req.open("GET", url);
req.setAttributionReporting(attributionReporting);
req.send();
Bước 2: Trả lời bằng tiêu đề (lượt nhấp và lượt xem)
Bước tiếp theo cho cả lượt nhấp và lượt xem là phản hồi bằng tiêu đề Attribution-Reporting-Register-Source
.
Xem mã ví dụ để biết thêm thông tin.
Khi nhận được yêu cầu của trình duyệt trên máy chủ, hãy phản hồi và đưa tiêu đề Attribution-Reporting-Register-Source
vào phản hồi.
res.set(
"Attribution-Reporting-Register-Source",
JSON.stringify({
// Use source_event_id to map it to any granular information
// you need at ad-serving time
source_event_id: "412444888111012",
destination: "https://advertiser.example",
// Optional fields
expiry: "604800",
priority: "100",
debug_key: "122939999"
})
);
Sau khi được chuyển đổi thành chuỗi, tiêu đề của bạn sẽ có dạng như sau:
{"source_event_id":"412444888111012","destination":"https://advertiser.example","expiry":"604800","priority":"100","debug_key":"122939999"}
Các bước tiếp theo
Tìm hiểu cách Đăng ký trình kích hoạt mô hình phân bổ.