Dados e planilhas · CSV Limpador
Como um navegador limpa um grande CSV em um Web Worker sem carregá-lo
· Como funciona
csv processamento do navegador privacidade
'Sem upload' soa como marketing até você ver como funciona. Esta postagem explica como um navegador lê um arquivo localmente, por que um Web Worker mantém a página responsiva, o que limita o tamanho do arquivo e como verificar se nada foi enviado.
Uma grande exportação e uma ferramenta web — o que geralmente acontece com seu arquivo e por que um upload não é uma necessidade técnica
A escolha de um arquivo em uma página da Web pode ser semelhante a um upload, mas a seleção e a transmissão são operações separadas do navegador. CSV O Cleaner recebe um objeto Arquivo após o visitante escolhê-lo, valida o tipo permitido e o tamanho configurado e depois lê seu texto dentro da página. Nenhum upload é necessário para detecção de delimitador ou limpeza de linha.
O registro oficial do produto diz que as linhas são analisadas no dispositivo, enquanto o registro da ferramenta restringe a afirmação: seu código não faz nenhuma solicitação transportando dados de arquivo, texto colado ou saída gerada. As solicitações de script de análise divulgadas são tráfego de página separado, portanto, a linguagem de privacidade deve distingui-las do caminho de processamento CSV.
Lendo um arquivo sem enviá-lo — como o arquivo API do navegador dá a uma página acesso aos bytes do seu dispositivo
A implementação chama `file.text()` em vez do FileReader API nomeado na estrutura de tópicos. Essa promessa é resolvida com uma string JavaScript disponível para a página. Um arquivo JSON utiliza uma ramificação de conversão separada; o texto delimitado é enviado como uma mensagem ao trabalhador junto com uma opção de delimitador opcional.
A leitura local não concede ao site acesso geral à unidade. A página recebe apenas o arquivo selecionado através do controle do navegador. Ele armazena um nome base para o eventual download, mantém a tabela atual na memória da guia e limpa esse estado quando o visitante solicita um reset.
A página usa File.text() para ler bytes selecionados sem upload
A análise é executada em um Web Worker criado preguiçosamente na primeira chamada. O trabalhador detecta o delimitador, verifica os caracteres por meio da mesma máquina de estado usada pelos testes e retorna o cabeçalho completo, as linhas, os avisos e o sinalizador BOM. Etiquetas de progresso são enviadas nesses estágios para que a interface principal possa continuar sendo atualizada.
transferir a varredura evita que o loop de caracteres síncronos monopolize o thread principal da interface do usuário. Não torna a análise gratuita ou transmitida; o texto fonte e a tabela retornada ainda ocupam memória. No pagehide, o cliente anula uma chamada em andamento e encerra o trabalhador para que uma guia em segundo plano não a retenha indefinidamente.
A memória, e não um limite de upload, é o limite – por que o limite depende do seu dispositivo e navegador, e não da cota do servidor
O esboço dizia que a memória, em vez de um limite de upload, era o limite, mas a interface enviada valida explicitamente um máximo de 50 MB. Esse limite está tanto no texto da configuração quanto no código do painel. Os recursos do dispositivo e do navegador ainda podem falhar abaixo do máximo teórico, mas o artigo não deve apagar uma proteção deliberada do produto.
As evidências do repositório também não podem fornecer um limite universal de linhas, um multiplicador de memória ou um tempo de processamento. O conteúdo do arquivo altera o número e o comprimento das strings criadas. A expectativa defensável é a entrada limitada mais a análise do trabalhador, e não um valor de desempenho que nunca foi medido no hardware do visitante.
A interface impõe um limite de arquivo 50 MB além das restrições do dispositivo
Para verificar a reivindicação restrita de não upload, abra as ferramentas do desenvolvedor após o carregamento da página, limpe a lista de redes, escolha uma amostra distinta e inofensiva e execute uma limpeza. Inspecione novos URLs, métodos e corpos de solicitação para esse marcador. Um download CSV pode aparecer como uma ação local do navegador, em vez de uma solicitação para um endpoint de conversão.
A inspeção da origem complementa a observação: o caminho de carregamento usa o texto do arquivo, o trabalhador importa o código do analisador local e downloadText cria a saída. A inspeção em tempo de execução detecta adições de implantação que apenas a origem pode perder. Nenhum dos dois prova o que as extensões do navegador ou o sistema operacional fazem, portanto, mantenha a conclusão no caminho de processamento de ToolAcre.
Exemplo resolvido – limpar uma exportação grande enquanto observa o painel de rede e o uso de memória, com o que esperar em um dispositivo com pouca memória
Use uma amostra gerada confortavelmente abaixo do limite documentado, com linhas suficientes para tornar o progresso visível, mas sem dados do cliente. Observe a atividade do trabalhador e visualize, aplique Trim whitespace e faça download. Registre se alguma solicitação contém o marcador exclusivo; não publique megabytes por segundo fabricados ou gráficos de memória.
Em um dispositivo restrito, a única previsão segura é que os recursos disponíveis sejam diferentes. O limite configurado evita que arquivos maiores entrem nesse caminho, enquanto a pressão normal de memória do navegador permanece possível. Se uma guia de teste ficar instável, feche outro trabalho, reduza a amostra e preserve o original em vez de prometer uma solução alternativa universal.
Exemplo resolvido: verifique uma amostra inofensiva sem inventar memória ou números de tempo
A limpeza local não pode retrair um arquivo enviado anteriormente para outro serviço e não pode processar uma entrada rejeitada pelo size guard. Ele também não isola a página de extensões, histórico da área de transferência ou malware na máquina. Esses são limites de ameaças distintos fora da implementação do analisador e do trabalhador.
A ferramenta retém um histórico de desfazer de até vinte estados da tabela durante a sessão, o que também consome memória local. A limpeza redefine a tabela e os controles; sair da página aborta e encerra o trabalhador. Esse comportamento é um detalhe operacional útil, mas não é uma garantia de apagamento seguro da memória do navegador ou do dispositivo.
O processamento no dispositivo pode ser verificado: como o limpador ToolAcre CSV é executado em seu navegador e nunca carrega seu arquivo
O caminho completo verificado é seleção, `File.text()`, análise de trabalhador, transformações de linha pura, serialização e download do navegador. A configuração identifica o limite de admissão real 50 MB e a declaração de privacidade separa explicitamente as solicitações de análise divulgadas do conteúdo da planilha. Isto é mais forte do que um slogan porque cada fronteira pode ser inspecionada.
Execute a verificação de rede com dados não confidenciais sempre que os detalhes da implantação forem importantes para sua organização. As evidências da fonte atual e da sessão observada apoiam uma afirmação precisa: a operação CSV de ToolAcre não tem endpoint de upload e não envia conteúdo de tabela. A precisão mantém a instrução útil sem fingir que todo o navegador está offline.