• 请不要在回答技术问题时复制粘贴 AI 生成的内容
jmyz0455
V2EX  ›  程序员

淘宝和天猫是如何使用同一个 iframe src 的?

  •  
  •   jmyz0455 · Nov 4, 2019 · 1905 views
    This topic created in 2477 days ago, the information mentioned may be changed or developed.

    最近要做跨站登录的需求,相当于是想要在 aaa.com 下登录,然后 token 能传给 bbb.com 使用,这样 bbb.com 就不用额外登陆了,注意两个网站的顶级域名是完全不一样的。

    我第一时间想到有这样做的网站就是阿里的 taobao.comtmall.com ,然后发现淘宝和天猫的页面都有一条公共的 iframe 代码,而且资源地址是一样的:src="//g.alicdn.com/alilog/oneplus/blk.html#coid=****&noid="

    我换个浏览器再试,同时打开淘宝和天猫,发现 src 路径里的 coid 虽然变了但是两个网站却是一样的。可我的淘宝和天猫都没有登陆而且还是用隐私模式访问,按道理来讲两者是互不知道对方的存在,但是为什么能生成唯一的 coid (对应同一个浏览器)?

    百思不得其解,v 友可以高见?

    jmyz0455
        1
    jmyz0455  
    OP
       Nov 5, 2019
    怎么有三个人收藏,但是没人回答的呀,帮顶一下都好嘛。

    我发现本地有个 g.alicdn.com 的 cookie,里面有个 _lastvisited 的值是这个 iframe src 的 coid。
    我尝试把所有本地存储都清空,发现 cookie 会刷新,我的一个猜想是无论是淘宝还是天猫,页面加载完成后会寻找这个 g.alicdn.com 的 _lastvisited,如果没有就请求某个 g.alicdn.com 的接口。最后用这个 cookie 拼出 coid,放到 iframe 的 src 里请求。

    当然只是个人愚见,望点评。还有这种多站共用一个域名的 cookie,如果去考虑网络安全的问题呢?需要预防哪些 xss 攻击?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2943 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 14:19 · PVG 22:19 · LAX 07:19 · JFK 10:19
    ♥ Do have faith in what you're doing.