CChunkRavel
Fluxos de trabalho

Fluxos de programação · Decodificação restrita de corpos chunked

03
Produto

Fluxos de trabalho

Decodifique um corpo chunked restrito de até 65536 bytes com saída máxima de 4096 bytes. Teste CRLF internos e o bloco zero, rejeitando truncamento, extensões, trailers e bytes posteriores.

01

Baixe o aplicativo

Escolha uma pasta e peça ao assistente que leia os arquivos relevantes antes de editá-los. Defina o objetivo e os limites da tarefa.

02

Abra a pasta do projeto

Escolha um endpoint compatível. As ferramentas disponíveis e a qualidade das respostas dependem do modelo e do servidor configurados.

03

Conecte e teste o modelo

Confira as alterações e a saída dos comandos. Execute as verificações do projeto antes de aceitar o resultado; código gerado não vem automaticamente testado.

04

Revise as alterações e execute os testes

Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.

Decodificação restrita de corpos chunked

Fluxos de trabalho
def chunk_body(wire):
    if type(wire) is not bytes or len(wire) > 65536:
        raise ValueError("bounded bytes")
    pos, body = 0, bytearray()
    while True:
        end = wire.find(b"\r\n", pos)
        token = wire[pos:end] if end >= 0 else b""
        if not 1 <= len(token) <= 8 or any(
            c not in b"0123456789abcdefABCDEF" for c in token):
            raise ValueError("plain hexadecimal size")
        size, pos = int(token, 16), end + 2
        if size == 0:
            if wire[pos:] != b"\r\n":
                raise ValueError("no trailers or extra bytes")
            return bytes(body)
        if len(body) + size > 4096:
            raise ValueError("body limit")
        if pos + size + 2 > len(wire):
            raise ValueError("truncated chunk")
        if wire[pos + size:pos + size + 2] != b"\r\n":
            raise ValueError("chunk delimiter")
        body.extend(wire[pos:pos + size])
        pos += size + 2

Revise antes de aplicar. Confira as alterações e a saída dos comandos. Execute as verificações do projeto antes de aceitar o resultado; código gerado não vem automaticamente testado.

Ambiente de programação com IA

Seu próximo projeto começa aqui.

Baixar para Windows ↗