Tiny Tiny RSS: Community

API Subscribe Problem (URL contains Chinese characters)

I have a feed contains Chinese characters which url is https://rsshub.app/smzdm/keyword/小米.
With URLencoded, the feed is https://rsshub.app/smzdm/keyword/%E5%B0%8F%E7%B1%B3.

The encoded url can be subscribed in ttrss subscription dialog.
But it won’t work in API subscription link.
https://example.com/tt-rss/public.php?op=subscribe&feed_url=https://rsshub.app/smzdm/keyword/%E5%B0%8F%E7%B1%B3
image
Is there any way to solve this problem?

ttrss version: v20.02-282b445

looks like web browser decodes urlencoded characters in the URL before opening it so tt-rss tries to subscribe to the unescaped URL. if you use subscription form at public.php?op=subscribe field is passed correctly.

i’m not sure if browsers are supposed to do this (maybe?) but i’m certain that trying to urlencode the URL again is a bad idea. not sure what could be done here tbh.

Well, thanks for you help. As you mentioned, it seems the browser decodes the url before it is subscribed to ttrss. I try to encode the Chinese character twice.

Which is 小米 -> %e5%b0%8f%e7%b1%b3 -> %25e5%25b0%258f%25e7%25b1%25b3. And this time it works for public.php?op=subscribe .

Alought it is a bad idea, but it works.