最近从 Moon FM 换成了 AntennaPod,opml 文件导入以后出现了一个问题,所有来自荔枝fm的节目封面都无比模糊,找到订阅源 url, 打开研究了下,找到了封面的url:

...
<itunes:image href="http://cdn.lizhi.fm/audio_cover/2020/08/16/2822514283056472071_80x80.jpg"/>
...

url 后面有个80x80,去掉看了下,果然变成了高清大图。
一开始想直接改软件源码来着,但是仔细想想更新还挺麻烦的,忽然想起来 Cloudflare Workers, 看了看文档感觉可行,主要就是 Workers 先获取荔枝的 rss 的内容,然后把所有的_80x80去掉,最后返回修改过的内容,源码如下:

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  if(request.url.split(".").pop() != "xml"){
    return new Response("Hello world", {status: 200})
  }
  id = request.url.split("/").pop()
  url = "http://rss.lizhi.fm/rss/" + id
  request = new Request(request)
  let response = await fetch(url, request) 
  response = new Response(response.body, response)
  var text = ""
  text = await response.text()
  text = text.replace(/_80x80/g, "")
  return new Response(text, {
    headers: {
      'Content-Type': 'text/xml; charset=utf-8'
    },
    status: 200
  })
}
// js知识约等于0,丢人了

然后把荔枝的url: http://rss.lizhi.fm/rss/1307862.xml 改成 https://lizhi.senventise.workers.dev/1307862.xml 就完事了。
效果如下:
对比