我正在寻找一种使用 ROMETools 设置我的 RSS 提要的方法。我有一个 Spring Boot 博客网络应用程序。想要将 RSS 提要 URL 嵌入电子邮件营销应用程序以阅读该提要。问题是我在网络中找不到自动设置提要项目的任何地方,例如,每个人都手动设置 URL 和描述,比如“嗨,这是我的描述”,而且他们手动输入了帖子 URL,比如“www.domain. postId?id=20"!我需要的是自动检测到带有标题、正文等的博客 URL。提前致谢。
我学到的是:1-在POM中嵌入依赖:
<dependency>
<groupId>com.rometools</groupId>
<artifactId>rome</artifactId>
<version>1.12.2</version>
</dependency>
2-公开 RSS 提要 URL:
@RestController
public class RssFeedRestController {
@Autowired
private RssFeedView view;
@GetMapping("/rss")
public View getFeed() {
return view;
}
}
3-将 AbstractRssFeedView 扩展为 @Component
@Component
public class RssFeedView extends AbstractRssFeedView {
@Override
protected void buildFeedMetadata(Map<String, Object> model, Channel channel, HttpServletRequest request) {
channel.setTitle("Title"); //Here is my Concern
channel.setDescription("Description"); //Here is my Concern
channel.setLink("www.mydomain.com"); //Here is my Concern
channel.setUri("www.mydomain.com"); //Here is my Concern
}
@Override
protected List<Item> buildFeedItems(Map<String, Object> model, HttpServletRequest request, HttpServletResponse response) {
Item item = new Item();
Date postDate = new Date();
item.setTitle("title"); //Here is my Concern
item.setLink("www.mydomain.com/"); //Here is my Concern
item.setUri("/www.mydomain.com/"); //Here is my Concern
item.setPubDate(postDate);
item.setAuthor("Me");
Description description = new Description();
description.setValue("Description"); //Here is my Concern
item.setDescription(description);
return Arrays.asList(item);
}
}