使用CouchDB提供HTML

alx*_*oss 8 rest json couchdb

我正在尝试将CouchDB与HTML /独立REST架构结合使用.也就是说,没有其他应用服务器,除了CouchDB和ajax风格的javascript调用CouchDB.

看起来交叉脚本是一个问题.之前我正在使用Cloudkit/Tokyo Cabinet,似乎所需的回调函数将其搞砸了.

现在我正在尝试CouchDB并遇到同样的问题.

这是我的问题:

1)这些问题是因为像CouchDB或CloudKit这样的REST/JSON存储在与我的网页不同的端口上运行吗?它们都在本地运行,并从"localhost"调用.

2)我应该让CouchDB托管我的页面并提供HTML吗?

3)我该怎么做?文件似乎不那么清楚......

谢谢,亚历克斯

J C*_*s A 10

有一个简单的答案:将静态HTML存储为CouchDB文档的附件.这样您就可以直接从CouchDB提供HTML.

有一个命令行工具可以帮助您完成此操作,称为CouchApp

Mikeal链接的书还有一章(管理设计文档),介绍如何使用CouchApp来完成这项工作.


myk*_*hal 7

3)您可以使用CouchDB节目生成HTML(或任何内容类型)


mik*_*eal 6

使用CouchDB提供/生成HTML有很大的优势.

首先,页面(HTTP资源)与数据或数据查询相关联,CouchDB知道何时在页面更改时更新etag.这意味着如果你将nginx放在CouchDB前面并说"缓存内容",那么你将获得通常需要自己构建的所有免费缓存.

我会在CouchDB前推送nginx> apache,因为Apache在处理并发连接方面并不是那么出色,而且nginx + erlang(CouchDB)非常棒.

此外,您还可以使用JavaScript编写这些意见,这是在CouchDB的书中记载以及http://books.couchdb.org/relax/使用我的观点服务器或在Python http://github.com/mikeal/couchdb-pythonviews其中还没有完全记录,但我很快就会开始:)

我希望其他语言的视图服务器也开始实现视图服务器协议中的新功能,以便任何人都可以在CouchDB中编写独立的应用程序.


Bri*_*new 0

我不禁认为您需要在表示层(HTML)和模型(CouchDB)之间添加一些层。

这样您就可以调解请求,提供额外的设施和功能。目前,您似乎正在将持久对象直接渲染到表示层,并且您将无法更改或扩展系统未来的行为。

采用模型-视图-控制器架构将使您的模型与表示层隔离,并为您提供一些未来的灵活性。

(我承认我无法就您的跨站点脚本问题提供建议)

  • Brian——这实际上就是这个架构的重点。我认为通过 Ajax,控制器层开始向客户端移动。控制器(以及更新视图的工作)是在页面上用 javascript 完成的。因此它对模型进行 REST/JSON 调用。完全完成后,模型方面确实需要一个授权/安全部分,但我现在正在制作原型。有人知道 CouchDB 中的 HTML 吗? (2认同)