Android-эквивалент iPhone «Добавить на главный экран»?

Я нашел много сообщений, когда спрашивал об этой проблеме, но все они относятся к тому, как загрузить файл из вашего браузера на сервер node.js. Я хочу загрузить файл из кода node.js на другой сервер. Я пытался написать его, основываясь на моем ограниченном знании node.js, но это не сработало.

function (data) {
  var reqdata = 'file='+data;
  var request = http.request({
    host : HOST_NAME,
    port : HOST_PORT,
    path : PATH,
    method : 'POST',
    headers : {
      'Content-Type' : 'multipart/form-data',
      'Content-Length' : reqdata.length
    }
  }, function (response) {
      var data = '';
      response.on('data', function(chunk) {
        data += chunk.toString();
      });
      response.on('end', function() {
        console.log(data);
      });
    });

  request.write(reqdata+'\r\n\r\n');
  request.end();
})

Вышеупомянутая функция вызывается другим кодом, который генерирует данные.

Я попытался загрузить тот же файл данных с помощью curl -F "file=@" and the upload is successful. But my code fails. The server returns an application specific error which hints that the uploaded file was invalid/corrupt.

I collected tcpdump data and analysed it in wireshark. The packet sent from my node.js code lacks the boundary required for the multipart data. I see this message in wireshark packet

The multipart dissector could not find the required boundary parameter.

Any idea how to accomplish this in node.js code?

18
задан Jayesh 21 April 2011 в 13:49
поделиться