我正在制作一些东西的原型(prototype),我希望有人能帮助我。我正在尝试创建一个将事件添加到日历
链接,该链接将下载并打开 iCal 文件 (.ics),以便他们可以将其添加到日历中。
我们使用 Jax-RS 和 Jersey 以及 tomcat 作为容器,并且我有 iCal4j
包。客户端是 jQuery/backbone。
- 我不确定返回数据的正确方法是什么。我是否应该创建一个 ics 文件并将其存储在返回之前的某个位置,或者从 iCal4j 发回 CalendarOutputter 文件流?
- 如果我创建了 ics 文件,我应该将其存储在哪里? WEB-INF 文件夹?怎么办?
- 如果返回文件流,Jax-RX 的正确@Produces(?) 是什么?
谢谢, 雷
最佳答案
您不应创建文件来返回数据。您应该能够直接返回您的 Calendar 对象。尝试这样的事情:
@GET
@Path("calendar")
@Produces("text/calendar")
public Response generateCalendar() {
Calendar calendar = new Calendar();
// Generate your calendar here
ResponseBuilder builder = Response.ok();
builder.header("content-disposition", "attachment;filename=calendar.ics");
builder.entity(calendar.toString());
return builder.build();
}
关于javascript - 如何从服务器数据创建 "add to calendar"iCal 链接(.ics 文件)并将其发送回我的 webApp?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11993435/