我在云服务器上部署了一个spring应用程序,数字海洋。
我尝试使用https://www.xml-sitemaps.com/生成sitemap.xml文件,但它只给了我一页。可以在https://hostname.com
上访问我希望我的站点地图有类似
的内容如何在Spring启动应用程序中为war文件中的其他页面制作站点地图。
答案 0 :(得分:1)
如果您要查看控制器中提到的导出网址,则可以从RequestMappingHandlerMapping
获取网址列表。
@RestController
public class TestController {
@Autowired
private RequestMappingHandlerMapping re;
@GetMapping("/sitemap.xml")
public String getSitemap() {
Map<RequestMappingInfo, HandlerMethod> handlerMethods = re.getHandlerMethods();
List<String> urls = new ArrayList<>();
for (Entry<RequestMappingInfo, HandlerMethod> entry : handlerMethods.entrySet()) {
urls.addAll((entry.getKey().getPatternsCondition().getPatterns()));
}
// Construct XML response from urls and return it
}
}