Va, suelto un problema que tengo ahora mismo.
Como haríais el manejo de archivos (img/pdfs/zips) en una api rest?
Voy a ir haciendo el diseño y si a alguien le interesa le paso el resultado.
#26433 pues que la API reciba un archivo desde una petición y haga lo que tenga que hacer con ella, por ejemplo de un producto, guardarla en su carpeta y devolver un OK.
Luego en los request de producto devuelva aparte de la info normal del producto, las respectivas URLs a sus imágenes.
#26435 tiene que poder gestionar grandes también
#26434 path? a que te refieres
#26437 enviar los datos no es el problema, el problema es como gestionar la imagen en la rest api y como hacer que los modelos sepan si tienen archivos o no.
#26438 Cómo guardarlos en la bd?, lo mejor es en la bd el path del archivo y los archivos guardarlos en algúna carpeta. El path puede tener por ejemplo la id de cliente : /uploads/id_cliente/pajas.pdf . Yo no recomendaria almacenarlo como BLOB en la bd.
Si no quieres darle acceso directo al archivo en tu sistema por temas de seguridad, implementas la subida del archivo a un servicio de terceros como backblaze ( https://www.backblaze.com/es_ES/cloud-storage.html ) y muestras la url compartida en el json.
#26436 pues la url o la andadura/camino al fichero.
Yo tampoco guardaria un fichero en la bd. El FE ya que se encargue de hacer las pajas que quieras con la imagen
#26442 Si eres google translator si. Me recuerda a cuando alguien copia y pega algún artículo en inglés traducido de aquella forma.
#26443 los robots tambien tenemos derechos!
Cambiando un poco de tema: https://github.com/dylanbeattie/rockstar para los que quieran ser rockstar developers
Yo lo haría con un FTP y guardando los paths de los ficheros en la BBDD. La API mira a ver si tiene el fichero y devuelve al cliente el comando FTP para descargarlo.
O envías disketes por correo postal, yo qué sé.
#26428 pero esq una cosa es el flat design y otra q la ui sea putamente fea con los componentes enormes mal puestos porq no caben dos cosas una al lado de otra y sea todo scroll xD.
#26448 yo siempre pense que en bytes usando la luz del sol reflejandola es lo mejor para enviar informacion o pavos como en disenchantment http://disenchantment.wikia.com/wiki/Turkey .
#26449 Ya lo estoy haciendo, luego explico como lo estoy haciendo.
Ejemplos como debería de funcionar:
Cuando el cliente pide productos:
Cliente GET: /product/id -> Api RESPONSE: Product { Data[], Images[1 => "URL"],Files[]}
Cuando el cliente actualiza una img de producto:
Cliente POST (PUT): /product/id/edit Product { Images[ 1=> "inputUploadData",]} ->
Api recibe el PUT -> Almacena los datos normales y cuando recibe las Images las pasa al FileManager Model y hace la magia.
Api RESPONSE: 200 OK.
#26449 si son ficheros tochos mejor eso que no meterlo como binario en la base de datos no?
#26456 Me da que han geolocalizado tu ip en algun pais subsahariano y de ahí que te hayan marcado como Fraude.
Escríbeles un correo a VPSDime.
Mas info de lo de fraude + geolocalización aqui: https://www.maxmind.com/es/home