Question

I have written an cocoa application to take a picture on the iPhone. I need to transfer the images taken to somewhere besides the iPhone namely another server. Does anyone know how I can accomplish this?

Thanks, Joe

Was it helpful?

Solution

First get a server and figure out what kind of phone <---> server API you want to use. There are any number of ways it can work. A simple and common scheme is a REST API with photos being uploaded via HTTP POST.

The basic scheme would be something like:

  1. Take picture
  2. Convert to JPG (there's a function for this)
  3. Construct HTTP POST using the NSURL* classes
  4. Set JPG data as POST body (or one part of a mutipart form post)

Converting to base64 should not be necessary.

If you've never put together any kind of server API, there are any number of examples available. Most photo-sharing sites have public APIs which may be useful references.

OTHER TIPS

By far the easiest way is to use an HTTP POST. Take a look at the "URL Loading System" in your documentation and then examine the related classes, particularly NSURLRequest.

As other people say, use HTTP POST. ASIHTTPRequest makes wrapping your POST up simple. It also moves your upload to a background thread and gives your delegate progress updates.

You could always convert the image data to a base 64 string and POST it to a php (or other) script on the target server.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top