An objective-c wrapper for embedding the mongoose http web server in iPhone apps
C Objective-C
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
LICENSE
MongooseDaemon.h Bugs fixed: Mongoose starts it's won thread so we don't need one Jul 21, 2009
MongooseDaemon.m
README.rdoc
mongoose.c
mongoose.h

README.rdoc

MongooseDaemon

MongooseDaemon is an objective C wrapper around the embedable mongoose http server for iPhone development. It is offered under a BSD style license.

MongooseDaemon is ideal for both embedded http services as well as simply debugging your iPhone applications file structure.

Mongoose is a lightweight embedable http server written by Sergey Lyubka and offered under a BSD style license. More information on mongoose can be found at the project's site here: code.google.com/p/mongoose/

NOTE: The mongoose.h and mongoose.c are taken directly from mongoose-2.6 and are unmodified. They are simply forked in this package for convenience and stability.

Usage

Clone the mongoose directory and add it to your X-Code project.

Then you can start it within one of you classes to provide http access to your iPhone application.

For example, to start MongooseDaemon when your application starts on port 8080:

Add the following to MyAppDelegate.h:

...
#import "MongooseDaemon.h"
....
@class MongooseDaemon

@interface MyAppDelegate : NSObject <UIApplicationDelegate, UITabBarControllerDelegate> {
  ...
  MongooseDaemon    *mongooseDaemon;
  ...
}

And add the following to MyAppDelegate.m:

...
@implementation LightyAppDelegate
...
- (void)applicationDidFinishLaunching:(UIApplication *)application {
mongooseDaemon = [[MongooseDaemon alloc] init];
[mongooseDaemon startMongooseDaemon:@"8080"];

...
- (void)dealloc {
...
  [mongooseDaemon stopMongooseDaemon];
  [mongooseDaemon release];
...
}

And that's it…an embeded http server with only about 9 lines of code!

TODO

1) Add a helper method to return the server's URL for convience

2) Add support for some of mongoose's rich feature set.

3) Investigate if there is anyway to server files over endge/3g instead of just WiFi.

Copyright © 2008 Rama McIntosh Released under the BSD license found in the file LICENSE