微博,优快云,知乎,豆瓣等产品的@功能的技术实现(猜想)

本文探讨了优快云、知乎、豆瓣和微博四种产品中@功能的实现方式。优快云和知乎通过特殊格式存储用户ID和用户名,而豆瓣仅存储用户ID,微博直接保存显示内容。每种实现都有其优缺点,如用户名称变更的处理、搜索兼容性和内容存储。在实现@功能时,需要考虑项目需求和版本兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于项目需要添加@功能,在评论以及发布短篇内容中@提及用户,于是参考了一些产品的@实现。记录如下:

  1. 优快云的@的实现:

优快云在客户端版本的叫做Blink的功能中引入了@功能,当你输入内容以及@用户,展示内容是 @深圳热心市民 你好

实际存储的内容是: 

"[at]{\"u\":\"u013107634\",\"n\":\"深圳热心市民\"}[/at]你好!"

以自定义标签[at] [/at] 开始和结束,并在中间拼接了json 字符串 其中 u 应该是 用户id , n 表示用户名。

这样的就需要客户端使用正则表达式去解析字符串 ,使用户名高亮以及可点击。

    

2. 知乎的@的实现:

展示的内容是 @深圳热心市民 你好!

实际存储的内容是:

"<p><a class=\"member_mention\" href=\"/people/2b891f7d75010801ea25d4e199343b24\" data-hash=\"2b891f7d75010801ea25d4e199343b24\">@深圳热心市民</a> 你好! </p>",
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值