7.2 O Multipart Content-Type No caso de múltiplas mensagens de peças, nas quais um ou mais conjuntos de dados diferentes são combinados em um único corpo, um campo de tipo de conteúdo de várias partes deve aparecer no cabeçalho de entidades. O corpo deve então conter uma ou mais partes do corpo, cada uma precedida por um limite de encapsulamento, e a última seguida por um limite de fechamento. Cada parte começa com um limite de encapsulamento e, em seguida, contém uma parte do corpo consistindo em área de cabeçalho, uma linha em branco e uma área de corpo. Assim, uma parte do corpo é semelhante a uma mensagem RFC 822 em sintaxe, mas diferente em significado. Uma parte do corpo NÃO deve ser interpretada como sendo realmente uma mensagem RFC 822. Para começar, NÃO são necessários campos de cabeçalho em partes do corpo. Uma parte do corpo que começa com uma linha em branco, portanto, é permitida e é uma parte do corpo para a qual todos os valores padrão devem ser assumidos. Nesse caso, a ausência de um campo de cabeçalho Content-Type implica que o encapsulamento é texto US-ASCII simples. Os únicos campos de cabeçalho que definiram significado para partes do corpo são aqueles cujos nomes começam com o Conteúdo. Todos os outros campos de cabeçalho geralmente devem ser ignorados nas partes do corpo. Embora eles geralmente sejam conservados no processamento de correio, eles podem ser descartados por gateways, se necessário. Tais outros campos podem aparecer em partes do corpo, mas não devem ser dependentes. Os campos X podem ser criados para fins experimentais ou privados, com o reconhecimento de que as informações que eles contêm podem ser perdidas em alguns gateways. A distinção entre uma mensagem RFC 822 e uma parte do corpo é sutil, mas importante. Um gateway entre a Internet e o correio X.400, por exemplo, deve ser capaz de dizer a diferença entre uma parte do corpo que contém uma imagem e uma parte do corpo que contém uma mensagem encapsulada, cujo corpo é uma imagem. Para representar o último, a parte do corpo deve ter o tipo de conteúdo: mensagem e seu corpo (após a linha em branco) deve ser a mensagem encapsulada, com seu próprio campo Content-Type: image header. O uso de sintaxe semelhante facilita a conversão de mensagens para partes do corpo, e vice-versa, mas a distinção entre os dois deve ser entendida pelos implementadores. (Para o caso especial em que todas as peças realmente são mensagens, um subtipo de subtítulo também está definido.) Como mencionado anteriormente, cada parte do corpo é precedida por um limite de encapsulamento. O limite de encapsulamento NÃO DEVE aparecer dentro de nenhuma das partes encapsuladas. Assim, é crucial que o agente de composição possa escolher e especificar o limite exclusivo que separará as partes. Todos os subtipos presentes e futuros do tipo multipart devem usar uma sintaxe idêntica. Os subtipos podem diferir em sua semântica e podem impor restrições adicionais na sintaxe, mas devem estar em conformidade com a sintaxe necessária para o tipo de multipart. Este requisito garante que todos os agentes de usuário compatíveis sejam, pelo menos, capazes de reconhecer e separar as partes de qualquer entidade multipart, mesmo de um subtipo não reconhecido. Conforme indicado na definição do campo Content-Transfer-Encoding, nenhuma codificação diferente de 7bit, 8bit ou binário é permitida para entidades do tipo multipart. Os delimitadores multipart e os campos de cabeçalho são sempre ASCII de 7 bits, em qualquer caso, e os dados dentro das partes do corpo podem ser codificados parte por parte, com os campos Content-Transfer-Encoding para cada parte do corpo apropriada. Os gateways de correio, relés e outros agentes de tratamento de correio são comumente conhecidos por alterar o cabeçalho de nível superior de uma mensagem RFC 822. Em particular, eles adicionam, removem ou reordenam campos de cabeçalho com freqüência. Essas alterações são explicitamente proibidas para os cabeçalhos das partes do corpo embutidos nos corpos das mensagens do tipo multipart. Todos os subtipos de multipart compartilham uma sintaxe comum, definida nesta seção. Um exemplo simples de uma mensagem de várias partes também aparece nesta seção. Um exemplo de uma mensagem multipart mais complexa é fornecido no Apêndice C. O campo Content-Type para entidades multipart requer um parâmetro, limite, que é usado para especificar o limite de encapsulamento. O limite de encapsulamento é definido como uma linha consistindo inteiramente de dois caracteres de hífen (-, código decimal 45) seguido do valor do parâmetro de limite do campo de cabeçalho Content-Type. NOTA: Os guias são para uma compatibilidade aproximada com o método de encapsulamento de mensagens RFC 934 anterior e para facilitar a busca dos limites em algumas implementações. No entanto, deve notar-se que as mensagens multipart não são completamente compatíveis com encapsulamentos RFC 934 em particular, eles não obedecem convenções de cotação RFC 934 para linhas incorporadas que começam com hifens. Este mecanismo foi escolhido através do mecanismo RFC 934 porque o último faz com que as linhas cresçam com cada nível de citação. A combinação deste crescimento com o fato de que as implementações SMTP às vezes envolvem linhas longas tornaram o mecanismo RFC 934 inadequado para uso no caso em que a estruturação multiparte profundamente aninhada é desejada. Assim, um campo de cabeçalho típico de tipo de conteúdo de várias partes pode ser assim: isso indica que a entidade consiste em várias partes, cada uma com uma estrutura que é sintaticamente idêntica a uma mensagem RFC 822, exceto que a área do cabeçalho pode estar completamente vazia, E que as partes são precedidas pela linha Observe que o limite de encapsulamento deve ocorrer no início de uma linha, ou seja, seguindo um CRLF e que esse CRLF inicial é considerado parte do limite de encapsulamento em vez de parte da parte anterior . O limite deve ser seguido imediatamente por outro CRLF e os campos de cabeçalho para a próxima parte, ou por dois CRLFs, caso em que não há campos de cabeçalho para a próxima parte (e, portanto, é suposto ser de tipo de texto Content-Type) . NOTA: O CRLF que precede a linha de encapsulamento é considerado parte do limite para que seja possível ter uma parte que não termine com um CRLF (intervalo de linha). As partes do corpo que devem ser consideradas para terminar com quebras de linha, portanto, devem ter dois CRLFs anteriores à linha de encapsulamento, sendo o primeiro parte da parte do corpo anterior e o segundo do qual faz parte do limite de encapsulamento. O requisito de que o limite de encapsulamento começa com um CRLF implica que o corpo de uma entidade multipart deve começar com um CRLF antes da primeira linha de encapsulamento - ou seja, se a área de preâmbulo não for usada, os cabeçalhos das entidades devem ser seguidos por DOIS CRLFs. É assim que essas entidades devem ser compostas. Um programa de leitura de correio tolerante, no entanto, pode interpretar um tipo de multipart que começa com uma linha de encapsulamento NÃO iniciada por um CRLF como sendo também um limite de encapsulamento, mas um programa de envio de correio compatível não deve gerar essas entidades. Os limites de encapsulamento não devem aparecer dentro dos encapsulamentos e não devem ter mais de 70 caracteres, sem contar os dois guias principais. O limite de encapsulamento que segue a última parte do corpo é um delimitador distinto que indica que nenhuma outra parte do corpo seguirá. Esse delimitador é idêntico aos delimitadores anteriores, com a adição de mais dois hifens no final da linha: parece haver espaço para informações adicionais antes do primeiro limite de encapsulamento e seguindo o limite final. Essas áreas geralmente devem ser deixadas em branco, e as implementações devem ignorar qualquer coisa que apareça antes do primeiro limite ou após a última. NOTA: Estas áreas de preâmbulo e epílogo não são usadas por causa da falta de digitação apropriada dessas partes e da falta de semântica clara para o manuseio dessas áreas em gateways, particularmente gateways X.400. NOTA: Como os limites de encapsulamento não devem aparecer nas partes do corpo sendo encapsuladas, um agente do usuário deve ter cuidado para escolher um limite exclusivo. O limite no exemplo acima poderia ter sido o resultado de um algoritmo projetado para produzir limites com uma probabilidade muito baixa de existir nos dados a serem encapsulados sem ter que pré-pesquisar os dados. Algoritmos alternativos podem resultar em limites mais legíveis para um destinatário com um antigo agente de usuário, mas exigem mais atenção à possibilidade de que o limite possa aparecer na parte encapsulada. O limite mais simples possível é algo como ---, com um limite de fechamento de -----. Como um exemplo muito simples, a seguinte mensagem de várias partes tem duas partes, ambas de texto simples, uma delas explicitamente digitada e uma delas implicitamente digitada: O uso de um Tipo de Conteúdo de multipart em uma parte do corpo dentro de outra entidade multipart é Permitido explicitamente. Nesses casos, por razões óbvias, deve-se ter cuidado para garantir que cada entidade multiparte aninhada deve usar um delimitador de fronteira diferente. Consulte o Apêndice C para obter um exemplo de entidades de várias partes aninhadas. O uso do tipo de conteúdo multipart com apenas uma parte do corpo pode ser útil em certos contextos e é explicitamente permitido. O único parâmetro obrigatório para Multipart Content-Type é o parâmetro limite, que consiste de 1 a 70 caracteres de um conjunto de caracteres conhecidos por serem muito robustos através de gateways de e-mail e NÃO terminando com espaço em branco. (Se um limite parece terminar com espaço em branco, o espaço em branco deve ser presumido como sendo adicionado por um gateway e deve ser excluído.) É formalmente especificado pelo seguinte BNF: Em geral, o corpo de uma entidade multipart pode ser Especificado da seguinte forma: NOTA: Faltam claramente do tipo de multipart é uma noção de partes de corpo estruturadas e relacionadas. Em geral, parece prematuro tentar ainda padronizar a estrutura entre partes. Recomenda-se que aqueles que desejem fornecer uma instalação de mensagens múltiplas mais estruturada ou integrada devem definir um subtipo de multipart que seja sintaticamente idêntico, mas que sempre espera a inclusão de uma parte distinta que pode ser usada para especificar a estrutura e a integração do outro Partes, provavelmente referindo-se a eles pelo campo Content-ID. Se esta abordagem for usada, outras implementações não reconhecerão o novo subtipo, mas tratá-lo-ão como o subtipo primário (multipartmixed) e, assim, poderão mostrar ao usuário as peças que são reconhecidas. 7.2.2 O subtipo Multipartmixed (primário) O subtipo principal para multipart, mixed, destina-se a ser usado quando as partes do corpo são independentes e pretendem ser exibidas em série. Todos os subtipos de várias partes que uma implementação não reconhece devem ser tratados como sendo de subtipo misturado. 7.2.3 O subtipo Multipartalternative O tipo multipartalternative é sintaticamente idêntico ao multipartmixed, mas a semântica é diferente. Em particular, cada uma das partes é uma versão alternativa da mesma informação. Os agentes do usuário devem reconhecer que o conteúdo das várias partes é intercambiável. O agente do usuário deve escolher o melhor tipo com base no ambiente e preferências dos usuários, ou oferecer ao usuário as alternativas disponíveis. Em geral, escolher o melhor tipo significa exibir apenas a parte LAST que pode ser exibida. Isso pode ser usado, por exemplo, para enviar e-mails com um formato de texto extravagante de forma que possa ser facilmente exibido em qualquer lugar: neste exemplo, os usuários cujo sistema de correio entendeu o texto - qualquer formato que visse apenas a versão elegante, enquanto Outros usuários veriam apenas a versão em texto rico ou em texto simples, dependendo das capacidades do sistema. Em geral, os agentes de usuário que compõem entidades multipartalternativas devem colocar as partes do corpo em ordem crescente de preferência, ou seja, com o formato preferido em último lugar. Para texto extravagante, o agente de envio do usuário deve colocar primeiro o formato mais simples e o formato mais rico. Os agentes de recepção de usuários devem escolher e exibir o último formato que eles são capazes de exibir. No caso em que uma das alternativas é de tipo multipart e contém subpartes não reconhecidas, o agente de usuário pode optar por mostrar essa alternativa, uma alternativa anterior ou ambas. NOTA: De uma perspectiva de implementadores, pode parecer mais sensato reverter essa ordenação e ter a alternativa mais simples por último. No entanto, colocar a alternativa mais simples em primeiro lugar é a opção mais amigável possível quando mutlipartalternative entidades são visualizadas usando um leitor de correio compatível com MIME. Embora essa abordagem imponha algum fardo aos leitores de correio compatíveis, a interoperabilidade com leitores de correio mais antigos foi considerada mais importante neste caso. Pode ser que alguns agentes de usuários, se eles podem reconhecer mais de um dos formatos, preferirão oferecer ao usuário a escolha do formato a ser exibido. Isso faz sentido, por exemplo, se o correio incluir uma versão de imagem bem formatada e uma versão de texto facilmente editada. O que é mais crítico, no entanto, é que o usuário não seja exibido automaticamente várias versões dos mesmos dados. Ou o usuário deve ser mostrado a última versão reconhecida ou deve ser explicitamente escolhido. 7.2.4 O subtipo Multipartdigest Este documento define um subtipo de síntese do tipo de conteúdo multipart. Este tipo é sintaticamente idêntico ao multipartmixed, mas a semântica é diferente. Em particular, em um resumo, o valor padrão do Tipo de Conteúdo para uma parte do corpo é alterado de textplain para messagerfc822. Isso é feito para permitir um formato de resumo mais legível que é amplamente compatível (exceto para a convenção de cotação) com o RFC 934. Um resumo neste formato pode, então, ser semelhante a este: Este documento define um subtipo paralelo do multipart Content - Tipo. Este tipo é sintaticamente idêntico ao multipartmixed, mas a semântica é diferente. Em particular, em uma entidade paralela, todas as partes devem ser apresentadas em paralelo, ou seja, simultaneamente, em hardware e software que sejam capazes de fazê-lo. Os agentes de composição devem estar conscientes de que muitos leitores de e-mail não terão essa capacidade e mostrarão as peças em série em qualquer evento. MIME multipartform-data POST problema Ive teve um problema tentando executar um plano de teste no JMeter que contém um POST de dados multipartform. Por algum motivo, o servidor web não responde com a resposta esperada quando JMeter faz o POST (que foi gravado com o proxy). Eu usei o wireshark para comparar o JMeter POST e um em um webbrowser e as diferenças parecem estar no formato dos dados de formulário. O formulário-formulário do pedido do navegador da Web se parece com isto: ----------------------------- 17807242114310 Conteúdo-Disposição: formulário-dados nomequotxx1quot 15 ----------------------------- 17807242114310 Content-Disposition: form-data namexx2quot A parte equivelant da solicitação no Jmeter se parece com isto: ----------------------------- 7d159c1302d0y0 Conteúdo-Disposição: formulário-dados nomequotxx1quot Conteúdo-tipo: texto de texto charsetISO-8859-1 Conteúdo - Codificação de transferência: 8bit 15 ----------------------------- 7d159c1302d0y0 Conteúdo-Disposição: formulário-dado nomequotxx2quot Conteúdo-tipo: texto plano charsetISO -8859-1 Content-Transfer-Encoding: 8bit Existe alguma maneira de conseguir Jmeter usar o formato do webbrowser No 05032009, o correio eletrônico Charlie B ltidden gt escreveu: gt Oi, gt gt Ive teve um problema tentando executar um teste Planeje no JMeter, que contém um POST de dados de multipartforms gt. Por algum motivo, o servidor web não responde gt com a resposta esperada quando o JMeter faz o POST (que foi gravado gt com o proxy). Eu usei o wireshark para comparar JMeter POST e um em um gt webbrowser e as diferenças parecem estar no formato dos dados do formulário. Gt gt O formulário-dados do pedido do navegador da Web se parece com isto: gt gt ----------------------------- 17807242114310 gt Conteúdo-Disposição: Form-data namequotxx1quot gt gt 15 gt ----------------------------- 17807242114310 gt Conteúdo-Disposição: formulário-dado nomexx2quot gt gt gt Gt A parte equivelante da solicitação no Jmeter parece assim: gt gt gt ----------------------------- 7d159c1302d0y0 gt Content-Disposition : Form-data namequotxx1quot gt Content-Type: textplain charsetISO-8859-1 gt Content-Transfer-Encoding: 8bit gt gt 15 gt ---------------------- ------- 7d159c1302d0y0 gt Content-Disposition: formulário-data namequotxx2quot gt Content-Type: textplain charsetISO-8859-1 gt Conteúdo-Transferência-Codificação: 8bit gt gt Existe alguma maneira de eu conseguir que o Jmeter use o formato Do webbrowser Desculpe, não é fácil no momento. No entanto, o servidor realmente deve lidar com os cabeçalhos adicionais. Se o conteúdo não variar, você pode criar um arquivo com o corpo POST desejado e enviar isso - basta omitir o Nome do parâmetro. BTW você pode testar os efeitos das várias combinações usando o servidor espelho. Envie o POST para a porta do servidor espelho, e todo o conteúdo da solicitação será retornado como o corpo da resposta. Abra esta postagem na exibição threadada Conteúdo do relatório como inapropriado Re: MIME multipartform-data POST problema Em resposta a esta postagem por Charlie B-3 tente testar o nome do parâmetro e também remover as opções de codificação. Eu tive um problema tentando executar um plano de teste no JMeter, que contém um POST de dados multipartform. Por algum motivo, o servidor web não responde com a resposta esperada quando JMeter faz o POST (que foi gravado com o proxy). Eu usei o wireshark para comparar o JMeter POST e um em um webbrowser e as diferenças parecem estar no formato dos dados de formulário. O formulário-formulário do pedido do navegador da Web se parece com isto: ----------------------------- 17807242114310 Conteúdo-Disposição: formulário-dados nomequotxx1quot 15 ----------------------------- 17807242114310 Content-Disposition: form-data namexx2quot A parte equivelant da solicitação no Jmeter se parece com isto: ----------------------------- 7d159c1302d0y0 Conteúdo-Disposição: formulário-dados nomequotxx1quot Conteúdo-tipo: texto de texto charsetISO-8859-1 Conteúdo - Codificação de transferência: 8bit 15 ----------------------------- 7d159c1302d0y0 Conteúdo-Disposição: formulário-dado nomequotxx2quot Conteúdo-tipo: texto plano charsetISO -8859-1 Content-Transfer-Encoding: 8bit Existe alguma maneira de conseguir que a Jmeter use o formato dos corretores de seguros webbrowserCfttb Confuso sobre os diferentes tipos de seguro e o que está coberto Compreende o seguro orienta você sobre o papel dos corretores de seguros e Como eles podem ajudar. Bem-vindo à Lloyd Whyte, oferecemos uma variedade de serviços de planejamento financeiro e seguros especializados. Nossos clientes podem ser profissionais de saúde, personagem. Opções binárias opções binais neurais 60 70 hits rede tutorial alemão 0001193125-16-487973.txt. 20160301 0001193125-16-487973.hdr. sgml. 20160301 20160301152702 NÚMERO DE ADESÃO: 0001193125-16-487973 TIPO DE SUBMISSÃO CONFORMADO: N-CSR. Brokers usam seus conhecimentos e experiência profissional para ajudá-lo a avaliar adequadamente suas necessidades de seguros, comprar o melhor valor em cobertura de seguro e. Aceitável para as companhias de seguros. O altar do Stone Creek 26. de Portland Oregon, eu completei: Tribuna diária de Nova York 25 de março de 1857, Página 3, Imagem 3, formando a BANCO CXThPMISSlON E HICHANGE JnBocante Comptiniee CLINTON FIRE-INSURANCE COMPANTf Cfttb. Os corretores da BIBA oferecem uma variedade de apólices de seguro competitivo para consumidores de motor, doméstico e de viagem, para comercial, estão amplamente disponíveis, e. sorting o seguro para o evento e para ajudar a criar com Erica, Lucy para CFTTB - Comitê para No momento da celebração do casamento real Como sempre, graças a Peter (gerente do site, agente de preenchimento) por me manter. Texto integral do diretório Mackays Montreal, para a microforma 1865-66. Contendo um diretório alfabético dos cidadãos e um diretório de rua com assinantes. Brokers. Seguro de Ansvar Uma divisão de negócios de: Escritório de Seguros Eclesiásticos. O conteúdo seguinte foi capturado no TcpMon: Pedido feito por SoapUI Pro 3.0.2: POST tf6servicesxdsrepositoryb HTTP1.1 Aceitar-Codificação: gzip, deflate Tipo de Conteúdo: multipartelated typeapplicationxopxml start start-infoapplicationsoapxml Limite de ação ---- Part1728349551.1260534830078 MIME-Version: 1.0 User-Agent: Jakarta Commons-HttpClient3.1 Host: ihexds. nist. gov:9080 Conteúdo-Comprimento: 13318 ------ Part1728349551.1260534830078 Tipo de Conteúdo : Applicationxopxml charsetUTF-8 typeapplicationsoapxml actionProvideAndRegisterDocumentSetRequest Content-Transfer-Encoding: 8bit Content-ID: ------ Part1728349551.1260534830078 Content-Type: textplain charsetus-ascii Content-Transfer-Encoding: 7bit Content-ID: ltgt Este é depeches documento. Pedido feito pela ferramenta xdstest: POST tf6servicesxdsrepositoryb HTTP1.1 Content-Type: multipartrelated boundaryMIMEBoundaryurnuuid613A2BD2D99F1E6B5912 60534073176 typeapplicationxopxml startlt0.urn: uuid: 613A2BD2D99F1E6B591260534073177 apache. orggt iniciar-infoapplicationsoapxml actionurn: IHE: iti: 2007 rovideAndRegisterDocumentSet-b User-agent: Axis2 acolhimento: ihexds. nist. gov: 9080 Transfer-Encoding: blocos 20f1 --MIMEBoundaryurnuuid613A2BD2D99F1E6B59126053407 3176 Content-Type: applicationxopxml charsetUTF-8 typeapplicationsoapxml Content-Transfer-Encoding: binário Content-ID: lt0.urn: uuid: 613A2BD2D99F1E6B591260534073177apache. orggt --MIMEBoundaryurnuuid613A2BD2D99F1E6B59126053407 3176 conteúdo - Tipo: textplain Content-Transfer-Encoding: binário Content-ID: lt1. Urn: uuid: 613A2BD2D99F1E6B591260534073366apache. or g gt Este é o meu documento. De onde posso configurar Content-Transfer-Encoding como binário No registro público nist, você pode visualizar o documento de texto que foi enviado como anexo: Eu também tentei fazer os Anexos de codificação como verdadeiros em Propriedades de TestRequest. Mas também não está funcionando. Obrigado pela ajuda
No comments:
Post a Comment