徐徐爱coding
  • 首页
  • 爱情买卖
  • 导航
  • 私语
  • 友情链接
  • 关于
    关于本站
    知识库
    弹钢琴
徐徐爱coding

徐徐爱coding

徐徐爱coding是一个个人博客站点,记录编程经历的点点滴滴,分享自己的所见与所得,坚持自己的初心,践行自己的梦想生活不是等着暴风雨过去,而是学会在风雨中跳舞!

Copyright © 2023 徐徐爱coding All Rights Reserved.
陕公网安备61019602000456陕ICP备2023007787号-2

网站已稳定运行

Nuxt3使用rss

Nuxt3使用rss

徐徐
前端
#typescript#Nuxt3
0 热度0 评论0 点赞
发布于2024-08-24 16:22:28
🌺前言
nuxt3使用rss订阅

1.下载依赖

bash
npm i rss 

2.在server/routes 定义rss.xml.ts

typescript
// server/routes/rss.ts

import RSS from 'rss';

export default defineEventHandler(async (event) => {
//用try-catch块包住所有东西
  try {
    //从dev.to获取数据
    const response = await fetch(
      'https://www.example.com/rss'
    );
    // 如果响应不正常,则抛出错误
    if (!response.ok) {
      throw new Error(response?.status.toString());
    }
    /*
        等待响应.json()

        将结果分配给帖子
        */
    const {data: posts} = await response.json();
    // 创建新的rss 这将是我们的新的page,带有网站标题和url
    const feed = new RSS({
      title: '',
      site_url: 'https://www.example.com', // 链接到 website/blog
      feed_url: `https://www.example.com/rss.xml`, // 链接到 rss feed
    });
    // loop over each posts
    for (const post of posts) {
      // 用正确的数据为rss feed添加项目标签
      feed.item({
        title: post.title, 
        url: `https://www.example.com/post/${post.id}`, // 文章所在的完整路径

        date: post.updateTime, //帖子创建日期
        categories: ['类别1'],
        description: '一些描述'
      });
    }
    const feedString = feed.xml({ indent: true }); //这将返回XML作为一个字符串。
    event.node.res.setHeader('content-type', 'text/xml');
    event.node.res.end(feedString); // 发送
  } catch (e) {
    // return an error
    return e;
  }
});

3.生成地址

bash
https://www.example.com/rss.xml

4.可以将生成地址放在页面上,链接上

目录

  • 1.下载依赖
  • 2.在server/routes 定义rss.xml.ts
  • 3.生成地址
  • 4.可以将生成地址放在页面上,链接上
文章最后更新于 2024-08-30 16:30:36
作者:徐徐
版权声明:转载请注明文章出处
留言
暂无数据

~~空空如也