开发Android Webdav服务器

时间:2016-01-09 12:18:58

标签: android http webdav nanohttpd

在我的应用中,我有一个NanoHttpd服务器https://github.com/NanoHttpd/nanohttpd 但现在我想添加一个webdav支持。我正在寻找一些教程或建议来做到这一点,但我发现只有jackrabbit库没有任何教程或指南。 你有什么建议给我吗?

2 个答案:

答案 0 :(得分:2)

有些人已将milton集成到他们的Android应用程序中以添加webdav服务器功能。见这里 - http://milton.io

主页上有教程链接。没有什么特定的android,但它应该是直接的。

(根据以下关于nanohttpd的评论) 要与nanohttpd集成,您需要实现请求和响应接口,以包装来自nanohttpd的数据。您需要创建一个miltons HttpManager实例,并将请求和响应对象传递给每个请求的进程方法。

请注意,milton与开箱即用的Simple http容器(称为Simpleton)集成在一起,因此您可以使用它而不是nanohttpd。只需创建一个io.milton.simpleton.SimpletonServer实例并调用其start()方法

如果你想使用它,可以按照Simpleton实现代码作为与nanohttpd集成的指南:

https://github.com/miltonio/milton2/tree/master/milton-server-ce/src/main/java/io/milton/simpleton

这显示了一个相当典型的集成,来自io.milton.grizzly.GrizzlyServer。非常简单。

@Override
public void service(Request request, Response response) throws Exception {
    GrizzlyMiltonRequest req = new GrizzlyMiltonRequest(request);
    GrizzlyMiltonResponse resp = new GrizzlyMiltonResponse(response);
    httpManager.process(req, resp);
}

答案 1 :(得分:1)

自2016年1月29日起,NanoHTTPD支持WebDAV动词。你只想拉最后一个版本并处理新的动词。