Mongoose开源项目的主页是http://code.google.com/p/mongoose/。Mongoose是一个web服务器,通过提供一个web接口给它,它可以嵌入到现有的应用程序中去。Mongoose web服务器的执行是自满足的,它不依赖于任何其他服务。如果你将它复制到任何目录并执行,它将将启动web服务并将当前目录作为主目录、端口号是8080。当然这些配置选项都可以通过配置文件mongoose.conf设置。
Mongoose它的前身是shttpd,它完全开源和自由使用。它还具有如下特性:
- 跨平台——Windows、MacOS 、 大多数UNIX
- CGI, SSL, SSI, Digest (MD5) authorization, resumed download, aliases
- IP-based ACL, Windows service, GET, POST, HEAD, PUT, DELETE methods
- Small footprint: executable size is 40 kB on Linux 2.6 i386 system, 60 kB on Windows system
- 能够用简单和干净的API嵌入到应用程序中
- Language suport for:
- C/C++ (native)
- Python - since version 2.6 (done)
- C# - since version 2.7 (done)
- Ruby - since version 2.9 (todo)
- Lua - since version 2.9 (todo)
Mongoose 是一个可嵌入到你的iPhone App 中的“轻量级”的http服务器,它是基于BSD 协议的开源项目,它的作者是Sergey Lyubka。项目主页位于:https://github.com/face/MongooseDaemon#readme
它的使用非常简单,你可以直接在项目中以源代码的方式引用。使用Mongoose时,首先要#import "MongooseDaemon.h",然后在应用程序委托中声明一个MongooseDaemon对象:
MongooseDaemon *mongooseDaemon;
在应用程序委托的applicationDidFinishLaunching:(UIApplication *)application方法中加入Mongoose服务器:
mongooseDaemon = [[MongooseDaemon alloc] init];
[mongooseDaemon startMongooseDaemon:@"8080"];
这样,当应用程序一启动就启动了一个Mongoose的http服务器(8080端口)。
在dealloc方法中,这样来停止http服务:
[mongooseDaemon stopMongooseDaemon];
[mongooseDaemon release];
在设备上调试该程序,然后在Mac上打开Safari,输入iPhone所在的ip地址和Mongoose http服务器所监听的端口8080,你将会看到浏览器中列出了应用程序沙盒中的所有目录:
现在,你可以访问程序目录中的某个文件了:
另外告诉你一个查看iPhone ip地址的小技巧:在“设置”程序中,点击Wi-Fi,可以看到当前Wi-Fi网络右边有一个蓝色箭头,点击这个图标,你会得到iPhone目前的ip地址。
文章出处:http://blog.youkuaiyun.com/kmyhy/article/details/7031340
本文介绍如何利用Mongoose项目在iOS应用中快速搭建一个HTTP服务器,包括安装、配置及运行过程,以及如何通过Safari浏览器访问应用沙盒中的文件。
1037

被折叠的 条评论
为什么被折叠?



