Does service module expect Base64 encoding for file uploads through http-post (drupal 7)? I have been having trouble getting a file to upload through http-post from my lisp application and I have noticed in all of the curl php examples I have found they have a like this:

$file = array(
  'filesize' =&gt; filesize($filename),
  'filename' =&gt; basename($filename),
  'file' =&gt; base64_encode(file_get_contents($filename)),
  'uid' =&gt; $logged_user-&gt;user-&gt;uid,
);


which includes the call to base64_encode, I am not doing this from my lisp application and I always get a response of 200 but the file is not uploaded.  I am using Services 3.x and a RESt server.  

Does Services require that file uploads are base64 encoded?
Short answer yes it does. There is a create raw method but unfortunately, it doesn't work very well b/c drupal 7s file handling is a joke.

Ive created a patch that will allow you to attach files to  a node and it uses multipart form, but its a work in progress.

http://drupal.org/node/1484992