Urgent.News

What's breaking now, across thousands of outlets.

Tech

Xiaohongshu share links have two domains, and one of them will fail silently

Originally published at linkdigest.dev , where I build this. Every number here came from a live link on 2026-09-08 and 2026-09-10. The failure described is one this service shipped to a real user. If you have a host table that maps domains to platforms, and Xiaohongshu is in it, check what you wrote. There is a good chance it says xhslink.com and nothing else. That was true here, and it cost us…

Xiaohongshu, a social media platform, has two domains for its share links, but one of them fails silently. This issue was discovered on September 8, 2026, and September 10, 2026. The failure was experienced by a real user, and it cost the service the first person who ever signed up. The two domains, xhslink.com and xhslink.cn, share the same platform but have different URLs.

When a user shares a note from the Xiaohongshu iOS app, the clipboard displays a URL like https://xhslink.cn/o/AxnRePgIokn. Older shares and links that travel through the desktop site use .com: https://xhslink.com/o/1WiQ1QI6Uc0. Both URLs are real and resolve to the same place. The .cn URL follows the .com one.

To understand why the failure is invisible, consider how a URL router works. A URL router usually looks for specific domains, and in this case, the router was designed to recognize either xiaohongshu.com or xhslink.com. However, the .cn domain was not recognized, and the request was handed off to a generic handler at the end of the chain.

This handler fetched the page and extracted information from the HTML, which resulted in a 200 response. However, the actual post was not displayed, as the script tags were stripped from the page, leaving only 264 characters of navigation chrome. The note body, author, and other relevant information were missing.

The reason for this silent downgrade is that a generic extractor reads the wrapper, not the post. The transcript was present in the original post but was not included in the extracted data. In short, a silent downgrade is worse than a crash because it tells users their product can only do so much, rather than providing an error message prompting them to retry.

To avoid this issue, update your URL table to include both xhslink.com and xhslink.cn. If you expand short links before identifying content, ensure that both xhslink.cn and xhslink.com are in the set. A full test suite may not catch this issue because the test URLs were all .com, while the actual URLs used were a mix of .com and .cn.

Additionally, be aware that your cache may still contain outdated information after deploying a parser fix. Make sure to decide whether to expand short links before or after computing the cache key.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

My favorite screenshot extension vanished, so I built my own

Start dragging, push past the bottom of the window, and the page scrolls along with you. Let go, and you get a single PNG of a region that was never on screen all at once.

  • Author built Koko Soko after GoFullPage stopped working
  • Koko Soko captures selected region, scrolls page with selection
  • Tool saves stitched PNG in browser, no data sent outside

More from Saturday 12 September →