fazer upload da imagem do aplicativo ipad para o servidor node js usando multiparty

jasmim

Eu sou muito novo em javascript e node js. Estou trabalhando no upload de imagens do meu aplicativo para iPad para descansar a API do node js (express js) usando o módulo multiparty.

Aqui está meu código de upload de imagem no objetivo c.

NSData *imgData = UIImageJPEGRepresentation(img.image, 0.2);
NSString *urlString = @"http://localhost:3000/api/uploadimage";
NSString *str = @"displayImage";

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setCachePolicy:NSURLRequestReloadIgnoringLocalCacheData];
[request setHTTPShouldHandleCookies:NO];
[request setTimeoutInterval:30];
[request setURL:[NSURL URLWithString:urlString]];

[request setHTTPMethod:@"POST"];

NSString *boundary = [NSString stringWithFormat:@"---------------------------14737809831464368775746641449"];

NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
[request setValue:contentType forHTTPHeaderField: @"Content-Type"];

NSMutableData *body = [NSMutableData data];

[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"currentEventID\"\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[@"52344457901000006" dataUsingEncoding:NSUTF8StringEncoding]];

if (imgData) {
    [body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
    // [body appendData:[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"displayImage\"; filename=\"myimage.jpg\"\r\n"]];
    [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"myimage.jpg\"\r\n", str] dataUsingEncoding:NSUTF8StringEncoding]];

    [body appendData:[@"Content-Type: image/jpeg\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:imgData];
    [body appendData:[[NSString stringWithFormat:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
}


[body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:body];

[request setURL:[NSURL URLWithString:urlString]];  
NSLog(@"HttpBody = %@",request.HTTPBody);
connectionSave =  [[NSURLConnection alloc] initWithRequest:request delegate:self];

Os dados do corpo da solicitação são impressos no console.

Para obter a imagem no lado do servidor, estou me referindo a este exemplo. [ https://github.com/strongloop/express/blob/master/examples/multipart/index.js][1]

Neste exemplo, eles estão criando var form = new multiparty.Form (); no método post. Mas estou enviando imagem do aplicativo, não do navegador, então não tenho nenhum formulário no qual os tipos de entrada são definidos. Como posso escrever esta API REST para obter a imagem e outros parâmetros de string?

var express = require('express');
var http = require('http');
var util = require('util')
var multiparty = require('multiparty');

var app = express();
var bodyParser = require('body-parser');

app.use(bodyParser.urlencoded({
    extended: true
}));

app.use(bodyParser.json());

app.use(bodyParser.urlencoded({limit:'10mb', extended: true}));
app.use(bodyParser.json({limit:'10mb'})); 

app.post('/api/uploadimage', function(req, res, next){
    var form = new multiparty.Form();

    console.log(req.body);
});

Também estou recebendo req.body vazio. Desde já, obrigado!! :)

Rahul

seu código objetivo parece perfeito. Você precisa usar o módulo connect-multiparty. Aqui está o código de exemplo para salvar o arquivo.

    app.post('/api/uploadimage', multipartMiddleware, function(req, res) {
         console.log(req.body, req.files); // check console 

    fs.readFile(req.files.urForm-data_name.path, function (err, data) {
            //here get the image name and other data parameters which you are sending like image name etc.
           fs.writeFile(newPath, data, function (err) {
          });
   //dont forgot the delete the temp files.
        });
     });

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

fazer upload de uma imagem usando AFNetworking para o servidor por node.js falhou

Node.js falhou ao fazer upload do arquivo de imagem para o firebase do servidor

Faça upload da imagem da galeria do aplicativo Android para o servidor Spring local

como fazer o upload da imagem na pasta do servidor usando angularjs e spring

Como fazer o upload da imagem e do vídeo para o servidor em swift 3

android incapaz de fazer upload da imagem para o servidor

Fazer upload de imagem para o servidor PHP usando cURL?

Faça upload da miniatura da imagem para o servidor, sem fazer upload da imagem inteira

O upload da imagem com o aplicativo IOS para o tamanho do arquivo do servidor é muito grande

como fazer o upload da imagem no aplicativo do servidor Blazor e salvar a imagem na pasta (e no servidor) salvar essa url no banco de dados

Lutando para fazer o upload do meu aplicativo node.js para o azure

Não é possível fazer upload do arquivo usando FormData para expressar o servidor do aplicativo Rea

Não é possível fazer upload da imagem para o servidor devido a 500 erro de servidor

Não é possível fazer upload da imagem para o servidor devido a 500 erro de servidor

Node JS Como fazer o POST da imagem junto com os dados da solicitação para outro servidor / api

travar o aplicativo ao fazer o upload da imagem da galeria para o Firebase Storage

Fazendo upload do aplicativo Node.js para o servidor WinSCP

fazer upload da imagem usando o caminho da imagem no frasco

Precisa de ajuda para fazer upload da imagem numpy array para o servidor ftp

Como fazer upload de imagens usando AFNetworking diretamente do aplicativo para iPad

Envie o caminho da imagem do servidor expresso node.js para reagir ao cliente

Fazer upload de uma imagem do cliente para o servidor NodeJS e salvá-la internamente no servidor?

Não é possível fazer upload da imagem com retrofit para o servidor

Não é possível fazer upload da imagem para o servidor com retrofit

Erro ao fazer upload da imagem no aplicativo Heroku Node.js

O aplicativo Swift trava ao fazer upload da imagem para o firebase

O upload da imagem do Node Js não funciona

Como passar o parâmetro usando o método Post no mobilefirst 8.0 para a API javascript para fazer upload da imagem no servidor

Faça upload da imagem para o servidor a partir do Windows Phone 8.1 usando windows.web.http

TOP lista

  1. 1

    R Shiny: use HTML em funções (como textInput, checkboxGroupInput)

  2. 2

    O Chromium e o Firefox exibem as cores de maneira diferente e não sei qual deles está fazendo certo

  3. 3

    Como assinar digitalmente um documento PDF com assinatura e texto visíveis usando Java

  4. 4

    R Folheto. Dados de pontos de grupo em células para resumir muitos pontos de dados

  5. 5

    Gerenciar recurso shake de Windows Aero com barra de título personalizado

  6. 6

    Como obter dados API adequados para o aplicativo angular?

  7. 7

    UITextView não está exibindo texto longo

  8. 8

    Por que meus intervalos de confiança de 95% da minha regressão multivariada estão sendo plotados como uma linha de loess?

  9. 9

    Acessando relatório de campanhas na AdMob usando a API do Adsense

  10. 10

    Usando o plug-in Platform.js do Google

  11. 11

    Como posso modificar esse algoritmo de linha de visada para aceitar raios que passam pelos cantos?

  12. 12

    Dependência circular de diálogo personalizado

  13. 13

    Coloque uma caixa de texto HTML em uma imagem em uma posição fixa para site para desktop e celular

  14. 14

    iOS: como adicionar sombra projetada e sombra de traço no UIView?

  15. 15

    Como usar a caixa de diálogo de seleção de nomes com VBA para enviar e-mail para mais de um destinatário?

  16. 16

    Tabela CSS: barra de rolagem para a primeira coluna e largura automática para a coluna restante

  17. 17

    How to create dynamic navigation menu select from database using Codeigniter?

  18. 18

    Converter valores de linha SQL em colunas

  19. 19

    ChartJS, várias linhas no rótulo do gráfico de barras

  20. 20

    用@StyleableRes注释的getStyledAttributes。禁止警告

  21. 21

    não é possível adicionar dependência para com.google.android.gms.tasks.OnSuccessListener

quentelabel

Arquivo