
Eu tenho um servidor Unbuntu rodando NodeJS, onde quero fazer upload de alguns arquivos. Alguns dos arquivos contêm alguns dados que eu preferiria que não vazassem, mas não seria um grande problema se alguém conseguisse os arquivos. Meu servidor NodeJS é atualmente um servidor HTTP simples, mas pelo que entendiEste artigo, deve ser possível forçar a criptografia dos uploads de arquivos HTTP. Isso significa que posso fazer upload de um arquivo usando uma solicitação HTTP POST e ele está criptografado? Como o upload do arquivo sabe criptografar o arquivo?
A solicitação HTTP é enviada do Microsoft Flow.
Responder1
O protocolo HTTP funciona sobre o protocolo TCP. HTTPS funciona sobre TLS. portanto, as conexões subjacentes são diferentes. Para enviar seu formulário com criptografia HTTPS, você precisará atualizar sua conexão HTTP para HTTPS usando o cabeçalho HTTP "Atualizar".https://en.wikipedia.org/wiki/HTTP/1.1_Upgrade_header
O HTTP não foi projetado para criptografar dados.
Em relação à sua pergunta sobre nodejs, vamos dar uma olhada no trecho de código aqui
var https = require('https');
https.createServer(options, app).listen(443);
O módulo https
criará um servidor que escuta na porta 443, que é usada para seu tráfego HTTPS. o próximo snippet cria seu servidor HTTP que escuta o tráfego na porta 80
var http = require('http');
http.createServer(app).listen(80);
Então agora você tem dois servidores escutando em duas portas diferentes. Para concluir minha resposta, HTTP e HTTPS são usados em conexões diferentes. você não pode transformar sua sessão HTTP em HTTPS instantaneamente, infelizmente.
Responder2
Acho que a solução mais fácil seria definir action
o URL https.
<form action="https://<YOUR_Server/post-handler" method="post" ...>