我有couchapp工作正常。如何让couchapp提供没有扩展名的文件(隐含的.html)
这工作:http://domain.com/file.html
这不:http://domain.com/file
我希望它明白,如果没有扩展名,应尽量.html扩展名。
我不确定这是否是一个_rewrite规则(我正在使用它来化我的URL)或其他东西。
我有couchapp工作正常。如何让couchapp提供没有扩展名的文件(隐含的.html)
这工作:http://domain.com/file.html
这不:http://domain.com/file
我希望它明白,如果没有扩展名,应尽量.html扩展名。
我不确定这是否是一个_rewrite规则(我正在使用它来化我的URL)或其他东西。
AFAIK重写当前不能用于向URL路径中的匹配变量添加后缀。
你可以使用的另一种方法是将file.html的内容放在一个给定键(名为“content”或类似名)下的id为“file”的文档中,创建一个show function [1]像“渲染”),输出与内容类型为“text/HTML”该键的值,然后创建一个重写,如:
{
"from": "/:doc",
"to": "/_show/render/:doc",
"method": "GET",
"query": {
}
}
完整的设计文档应该是这样的:
{
"_id": "_design/rewrite",
"shows": {
"render": "function(doc) { return { headers: { \"Content-Type\": \"text/html\"}, body: doc.content } }"
},
"rewrites": [
{
"query": {},
"method": "GET",
"to": "/_show/render/:doc",
"from": "/:doc"
}
]
}
及相应的文档:
{
"_id": "file",
"content": "<html>html content of doc goes here</html>"
}
我已经分享了一个遵循上述模式的例子[2]。
[1] http://wiki.apache.org/couchdb/Formatting_with_Show_and_List
[2] https://mikewallace.cloudant.com/rewriter/_design/rewrite/_rewrite/file
完美 - 谢谢! –