Subir una imagen al servidor

¡Muy buenas! Después de pasar dos días mirando exhaustivamente como subir una imagen al servidor y casi lograrlo, me pongo a preguntar en el foro a ver si alguien me puede ayudar con el último paso:

Aquí os dejo una página con un ejemplo: https://coronalabs.com/blog/2014/02/25/tutorial-uploading-files-demystified/

Como no me funciona mi código, he mirado el protocolo http en postman, y lo que pone es:

POST /productos/foto HTTP/1.1 Host: localhost:8089 api\_token: sdN9GhDmR6wB5yKCzzSK2LyFY7xuz8uHfgrXNyqOVV97OmTqNp6999RLD00c enctype: multipart/form-data Cache-Control: no-cache Postman-Token: dcafea33-9283-678c-9790-ff389591e222 Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW ------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="foto"; filename="img.jpg" Content-Type: image/jpeg ------WebKitFormBoundary7MA4YWxkTrZu0gW--

Si envío esta petición desde postman a mi API REST, si que me sube la imagen. De momento, me la sube en el localhost, así que el procedimiento funciona.

La función que tengo es esta:

local url = dir.."/productos/foto" local params = {     timeout = 60,     progress = true,     bodyType = "binary"     } local filename = "img.jpg" local baseDirectory = system.ResourceDirectory local contentType = "image/jpeg" local headers = {} headers.filename = filename headers["enctype"] = "multipart/form-data" headers["Content-Type"] = "multipart/form-data" params.headers = headers network.upload( url , "POST", uploadListener, params, filename, baseDirectory, contentType )

Al ejecutar esta función, me sale un error de la API REST. Si por ejemplo, en el código de la API REST pongo un “return” del archivo subido, me salta un nil.

function foto\_upgrade (Request $request){                  $foto = $request-\>file('foto');          $id = Ventas::orderBy('id', 'desc')-\>select('id')-\>first(); return $foto;         $foto-\>move('C:\xampp\tmp', $id['id'].'.jpeg');                  return "ok";     }

Respuesta:

Upload started 13:24:38.192  Uploading... bytes transfered nil 13:24:38.287  Upload ended... 13:24:38.287  Status: 200 13:24:38.287  Response: 

Creo que lo que falla es algun dato en el protocolo de comunicaciones. He hecho un montón de pruebas pero no consigo ningun resultado. He probado incluso de hacerlo con un network.request () poniendo cada parámetro en el body y en el headers. ¡Qué desesperación!

Gracias de antemano!!!

¿Alguien ha subido alguna vez alguna imagen y ha tenido que escribir los parámetros de envío y le ha funcionado? 

¿Alguien ha subido alguna vez alguna imagen y ha tenido que escribir los parámetros de envío y le ha funcionado?