【问题标题】:web API as virtual filesystem?Web API 作为虚拟文件系统?
【发布时间】:2011-03-26 05:40:10
【问题描述】:

我一直在玩弄将 RESTful Web API(例如 CouchDB、Twitter)表示为文件系统的想法 - 只是为了好玩和作为一种学习体验。但是,我不知道这是否可行或如何开始。

例如,http://example.org/foo/bar 之类的资源可能可以通过 /mnt/example.org/foo/bar 访问。我想ls /mnt/example.org/foo 会返回bar baz

虽然我知道 FUSE,但我对它一无所知。我不是低级程序员,我想知道是否有某种 Python API,或者我可以简单地编写一些 Bash 脚本来触发 curl 对文件系统查询的请求?

任何指针将不胜感激!

【问题讨论】:

    标签: fuse


    【解决方案1】:

    这方面的标准称为 WebDAV。见:http://webdav.org

    甚至还有一个 FUSE 驱动程序:http://savannah.nongnu.org/projects/davfs2

    查看源代码,davfs2 似乎是用 C 编写的。用 Python 或 Perl 重新实现它可能是一个有趣的项目。


    啊,从 cmets 我看到你想要的是关于如何编写 FUSE 模块的指针。当然,您编写 TwitterFS 之类的东西的想法是可行的。它可能会像 /proc 中的东西一样工作。

    用于实现 fuse 的 Perl 库有很好的文档记录:CPAN - Fuse。您只需要加载模块并实现相关的回调函数。看起来很简单。

    这是一个 Python FUSE 库:fusepy。它没有很好的文档记录,但给出了几个示例,包括功能性 sftp 文件系统。

    【讨论】:

    • 谢谢 - 我知道 WebDAV,但目前还不太清楚它是如何相关的(可能是由于无知)或者我将如何开始。澄清一下:我只控制客户端,所以不能在服务器上安装任何 WebDAV 模块。会做更多的研究...
    猜你喜欢
    • 2016-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-28
    • 1970-01-01
    • 1970-01-01
    • 2015-11-29
    相关资源
    最近更新 更多