如何从ePub Book写入服务器

时间:2013-03-30 20:16:06

标签: php javascript xmlhttprequest epub epub3

有没有办法从ePub书中将数据写入服务器?

我正在尝试创建一个交互式活动以配合一些图书内容,我想将活动中用户的回复写入服务器上的数据库。

我很喜欢活动的所有JavaScript和数据库的所有服务器端代码;但我似乎无法弄清楚如何从ePub书籍中获取数据到服务器。如果有可能吗?

我尝试过使用jQuery和AJAX,我也试过使用XMLHttpRequest。

我最接近的工作导致了一条错误消息:第XXXX行XXXX处的错误:xmlParseEntityRef:no name

以下是代码段:

var objRequest = new XMLHttpRequest();

objRequest.open("POST", "http://www.example.com/write.php?action=yes", false);
objRequest.send();

if (objRequest.status != 200 && objRequest.status != 0) {
  alert("error");
} else {
  alert("success");
}

我认为错误是在IF语句行上报告的。我的ALERT语句都没有触发。

正如笔记一样,这在浏览器中运行得非常好。只是不在编译的ePub包中。

非常感谢任何建议。

谢谢!

2 个答案:

答案 0 :(得分:0)

据我所知,Apple不会让你从互联网上获取任何数据到你的epub(至少在iBooks中)。

仍然在iBooks中,您无法使用POST请求从您的epub发送数据。你可以将数据发送到互联网的唯一方法是使用GET请求,我认为你只能通过建立一个简单的链接,而不是使用AJAX请求来做到这一点。

<a href="http://mywebsite.com/myfile.php?mydata=12324&my_other_data=foo">
Send data to myfile.php
</a>

我不知道对于其他epub读者来说它是否是同一个东西......但Apple只是锁定了iBooks。

告诉我,如果我错了,我很想知道。

答案 1 :(得分:0)

如果您在iBooks作者中打包该书并将JavaScript创建为HTML小部件,Apple将允许远程连接。我已经尝试过这样做了,并且试图让它与epub一起使用时头疼。使用小部件和iBooks作者,我的书甚至可以在后台自动更新新数据。 Trevor Burnham有一个很好的小部件模板,你可以在这里使用:https://github.com/TrevorBurnham/iBooks-HTML-Widget-Boilerplate