当前位置: 首页 > news >正文

程序化广告行业(50/89):Cookie映射技术深度剖析

程序化广告行业(50/89):Cookie映射技术深度剖析

大家好!一直以来,我都希望能和大家一起深入探索程序化广告行业,共同学习进步。在之前的分享中,我们已经了解了程序化广告的很多关键内容,今天咱们聚焦于程序化广告中的cookie映射技术。这一技术在精准广告投放里起着非常重要的作用,能帮助各个平台更好地识别用户,实现更精准的广告推送。下面,我们就详细剖析一下这项技术。

一、Cookie映射技术的重要性与基本原理

在程序化广告中,不同平台对用户的标识方式不同,这就导致同一个用户在不同平台上可能被视为不同的个体。而cookie映射技术的出现,就是为了解决这个问题,它能将不同平台的用户标识串联起来,让各个平台知道它们面对的是同一个用户,进而实现精准的广告投放和用户行为分析。

PC端通常用cookie来标识用户,但不同平台的cookie命名规则和所属域名不同,无法直接共享数据。比如,AdX平台和DSP平台对同一个用户的cookie命名可能完全不一样。这时候,就需要cookie映射技术来建立它们之间的联系。移动端虽然相对稳定,用设备号ID来识别用户,但在一些涉及多平台交互的场景下,cookie映射同样能发挥作用。

二、Cookie映射的常见场景及流程

  1. AdX与DSP间的cookie映射
    • 情形一:DSP发起映射:当DSP保存映射关系时,由DSP埋CM代码,且埋的是AdX的CM代码。在这个过程中,AdX向DSP发送竞价请求并携带AdX - UID(AdX的用户标识)。DSP若未找到该用户的映射关系,会向AdX发起cookie mapping请求,并在出价返回的Ad Tag中携带1×1的透明像素图片,其链接指向AdX的cookie mapping URL。浏览器触发该图片后,会跳转至AdX的cookie mapping服务,AdX再302重定向到DSP并携带AdX - UID。最后,DSP“种”上自己的cookie(假设为DSP - UID),并保存DSP - UID和AdX - UID的映射关系。例如,AdX的CM URL可能是“http://cm.adx.com/masky/r/cm.gif?adx_id=xxx”,当浏览器访问这个地址时,会跳转至DSP的CM URL,携带AdX的Cookie ID,DSP就可以用这个ID与自己的Cookie ID建立匹配关系。
    • 情形二:AdX发起映射:部分AdX可主动发起cookie映射服务并保存映射关系。此时由AdX埋CM代码,埋的是DSP的CM代码。流程上,DSP出价返回Ad Tag,AdX将携带DSP的CM代码的Ad Tag发送到浏览器。浏览器触发DSP的CM代码后,302跳转到AdX,AdX保存与DSP的cookie映射关系。
    • 强制cookie映射:如果DSP在某些AdX的投放量小,cookie mapping的机会就少,可识别的人群数量也会受限。为解决这个问题,DSP可以采用强制cookie映射。即DSP在某家AdX赢得展示后,除了与该AdX进行cookie映射外,还能在广告曝光时发起其他AdX的cookie映射请求。不过,由于浏览器会限制跳转次数,所以不能无限映射。
  2. DSP与DMP间的cookie映射:在DSP与DMP(数据管理平台)的cookie映射中,通常由DSP发起映射并保存映射关系,所以是DSP埋CM代码,埋的是DMP的CM代码。当DSP竞价成功后,在返回Ad Tag时或曝光后埋入CM代码。浏览器触发DMP的CM代码后,302跳转到DSP,DSP保存DSP ID和DMP ID的映射关系。这一映射关系的建立,能让DSP利用DMP中的用户数据,进一步优化广告投放策略,实现更精准的广告推送。
  3. DSP与广告服务平台间的cookie映射:对于DSP与广告服务平台(如PCP动态创意平台等)的cookie映射,一般由广告服务平台发起映射并保存映射关系,所以由广告服务平台埋CM代码,埋的是DSP的CM代码。在曝光后,浏览器触发DSP的CM代码,302跳转到广告服务平台,广告服务平台保存与DSP的cookie映射关系。通过这种映射,广告服务平台可以更好地为DSP提供创意服务,提升广告的展示效果。

三、代码示例:模拟Cookie映射流程

下面用Python代码模拟一个简单的AdX与DSP间cookie映射的流程,帮助大家更好地理解其逻辑。

# 模拟AdX和DSP的用户标识
adx_uid = "adx_12345"
dsp_uid = "dsp_67890"

# 模拟映射表
mapping_table = {}

# 模拟DSP收到AdX竞价请求
def receive_bid_request(adx_uid):
    if adx_uid not in mapping_table:
        print(f"DSP未找到AdX用户标识 {adx_uid} 的映射关系,发起cookie mapping请求")
        # 模拟向AdX发起请求并得到映射结果
        mapping_table[adx_uid] = dsp_uid
        print(f"DSP保存映射关系:AdX用户标识 {adx_uid} 对应DSP用户标识 {dsp_uid}")


# 模拟AdX重定向到DSP携带AdX - UID
def redirect_to_dsp(adx_uid):
    if adx_uid in mapping_table:
        print(f"AdX重定向到DSP,携带AdX用户标识 {adx_uid}")
        dsp_uid = mapping_table[adx_uid]
        print(f"DSP根据映射关系,确认对应的DSP用户标识为 {dsp_uid}")


# 模拟整个cookie映射流程
receive_bid_request(adx_uid)
redirect_to_dsp(adx_uid)

在这个代码示例中,我们简单模拟了DSP收到AdX竞价请求后,发现没有映射关系,发起请求并保存映射,以及AdX重定向到DSP的过程。实际的cookie映射流程涉及到网络请求、数据存储等复杂操作,这里只是为了让大家对其逻辑有一个初步的认识。

写作这篇博客真的很不容易,从复杂的技术原理梳理到代码示例的编写,每一步都花费了很多心思。希望这篇文章能帮助大家更好地理解程序化广告中的cookie映射技术。如果您觉得这篇文章对您有帮助,请点赞、评论支持一下,也请关注我的博客,后续我还会继续分享更多程序化广告行业的精彩内容,咱们一起在这个领域不断探索、共同进步!

相关文章:

  • 中级:MyBatis面试题深度剖析
  • Qt - findChild
  • LVGL Chart和Spinner详解
  • 决策树(DecisionTree)
  • My first day in QT programming
  • Ansys Zemax | 如何使用物理光学传播(POP)工具描述空间电场传播(二)
  • Java实现websocket
  • sourceinsight 4.0 任意配置主题颜色风格的方法
  • 用spring-webmvc包实现AI(Deepseek)事件流(SSE)推送
  • esp32 idf中的外部组件
  • OpenAI最近放出大新闻,准备在接下来的几个月内推出一款“开放”的语言模型
  • 基于HUTOOL实现RSA工具类
  • Vue3+Vite+TypeScript+Element Plus开发-02.Element Plus安装与配置
  • deepseek使用记录26——思维混乱背后的理论泡沫与骗局
  • LeetCode 热题 100_打家劫舍(83_198_中等_C++)(动态规划)
  • (C语言)虚数运算(结构体教程)(指针解法)(C语言教程)
  • 关于点扩散函数小记
  • 《向量数据库指南》——深度解析Kubernetes Operator在Mlivus Cloud中的实现原理
  • FPGA实现数码管显示分秒时间
  • 【编译原理】第三章 词法分析
  • 人民日报大家谈:为基层减负,治在根子上减到点子上
  • 中国田径巡回赛西安站完赛:男子跳远石雨豪夺冠,女子跳高刘肼毅折桂
  • 东航C919航线上新!正式投入上海虹桥—深圳航线运营
  • AG600“鲲龙”批生产首架机完成生产试飞
  • 工人日报:应对“职场肥胖”,健康与减重同受关注
  • 小雨伞保险经纪母公司手回集团通过港交所聆讯