From 68fc8e96a9629e73469ed457abd955e548ec670c Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:49:58 +0100 Subject: unslug pt-br: move --- .../identifying_resources_on_the_web/index.html | 183 +++++++++++ files/pt-br/web/http/basics_of_http/index.html | 61 ++++ .../mime_types/common_types/index.html | 336 +++++++++++++++++++++ .../web/http/basics_of_http/mime_types/index.html | 314 +++++++++++++++++++ 4 files changed, 894 insertions(+) create mode 100644 files/pt-br/web/http/basics_of_http/identifying_resources_on_the_web/index.html create mode 100644 files/pt-br/web/http/basics_of_http/index.html create mode 100644 files/pt-br/web/http/basics_of_http/mime_types/common_types/index.html create mode 100644 files/pt-br/web/http/basics_of_http/mime_types/index.html (limited to 'files/pt-br/web/http/basics_of_http') diff --git a/files/pt-br/web/http/basics_of_http/identifying_resources_on_the_web/index.html b/files/pt-br/web/http/basics_of_http/identifying_resources_on_the_web/index.html new file mode 100644 index 0000000000..42830a10b9 --- /dev/null +++ b/files/pt-br/web/http/basics_of_http/identifying_resources_on_the_web/index.html @@ -0,0 +1,183 @@ +--- +title: Identificando recursos na web +slug: Web/HTTP/Basico_sobre_HTTP/Identifying_resources_on_the_Web +tags: + - Esquema + - HTTP + - O que é HTTP? + - Protocolo HTTP + - Sintaxe URL + - URI + - URL + - query + - resources +translation_of: Web/HTTP/Basics_of_HTTP/Identifying_resources_on_the_Web +--- +
{{HTTPSidebar}}
+ +

O alvo de uma requisição HTTP é chamada de "resource", ou recurso em português, com a natureza ainda não definida; Isso pode ser um documento, uma foto ou qualquer outra coisa. Cada recurso é identificado por uma Identificação de recursos uniforme, do inglês Uniform Resource Identifier ({{Glossary("URI")}}) usada pelo HTTP para identificar recursos.

+ +

A identidade e a localização de recursos na Web são fornecidas, principalmente por um único URL (Uniform Resource Locator, um tipo de URI). Pode ser que as vezes as a identidade e a localização não são dadas pelo mesmo URI: O HTTP usa um cabeçalho HTTP específico, {{HTTPHeader("Alt-Svc")}} quando o recurso solicitado quer que o cliente acesse-o de outra localização

+ +

URLs e URNs

+ +

URLs

+ +

A forma mais comum de URL é o Uniform Resource Locator ({{Glossary("URL")}}) , que é conhecido como endereço de Web.

+ +
https://developer.mozilla.org
+https://developer.mozilla.org/pt-BR/docs/Learn/
+https://developer.mozilla.org/pt-BR/search?q=URL
+ +

Qualquer um desses URLs podem ser digitado na barra de endereços do seu navegador dizendo para carregar a página associada (recurso).

+ +

Uma URL é composta por diferentes partes, algumas são estritamente necessárias e outras são opcionais. Um exemplo mais complexo seria algo como isso:

+ +
http://www.exemplo.com:80/pasta/para/meu-arquivo.html?chave1=valor1&chave2=valor2#AlgumaCoisaNoDocumento
+ +

URNs

+ +

Um Nome de Recurso Uniforme do inglês Uniform Resource Name (URN) é uma URI que identifica um recurso pelo nome em um namespace particular.

+ +
urn:isbn:9780141036144
+urn:ietf:rfc:7230
+
+ +

As duas URNs correspondem

+ + + +

Sintaxe daUniform Resource Identifiers (URIs)

+ +

Esquema ou protocolo

+ +
+
Protocol
+
http:// é o protocolo. Ele indica qual é o protocolo que o navegador irá usar. Usualmente o protocolo é o HTTP, ou sua versão segura, HTTPS. A Web requer um desses dois, mas os navegadores tambem sabem como lidar com outros protocolos como o mailto: (para abrir um cliente de email) ou o ftp: para fazer uma transferêcia de arquivo, então não fique surpreso se ver alguns desses protocolos. Esquemas comuns são:
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
EsquemaDescrição
dataURI de dados
fileNomes de arquivos específicos do host
ftpProtocolo de transferência de arquivo
http/httpsHyper text transfer protocol (Secure)
mailtoEndereço de correio eletrônico (e-mail)
sshSecure shell
teltelefone
urnUniform Resource Names
view-sourceCódigo fonte de um recurso
ws/wssConecções de WebSocket (Encriptadas)
+ +

Autoridade

+ +
+
Domaine Name
+
www.example.com é o nome de domínio ou autoridade que governa o namespace. Ele indica qual servidor web será solicitado. Alternativamente, é possível utilizar um {{Glossary("IP address")}}, mas isso pode ser menos conveniente e não é muito utilizado na Web.
+
+ +

Porta

+ +
+
Port
+
:80 é a porta nesta instância . Ela indica qual é o "portão" técnico usado para acessar os recursos no servidor web. Usualmente ela é omitida se o servidor web utiliza a porta padrão do protocolo HTTP (80 para HTTP e 443 para HTTPS) para garantir o acesso aos recursos. Do contrário, ela se torna obrigatória.
+
+ +

Caminhos

+ +
+
Path to the file
+
/path/to/myfile.html é o caminho para o recurso no servidor Web. Nos primeiros dias da Web, um caminho era representado pelo caminho físico correspondente no servidor web. Hoje em dia isso é mais uma abstração  tratada pelos servidores Web não sendo necessariamente o endereço físico do arquivo em questão.
+
+ +

Query / Parâmetros

+ +
+
Parameters
+
?key1=value1&key2=value2 são parâmetros extras fornecidos ao servidor Web. Eles são uma lista de pares chaves/valores separados com o símbolo &  O servidor web pode usar esses parametros para fazer coisas extras depois retornando o recurso para o usuário. Cada servidor web tem suas regras em relação aos parâmetros, e o unico jeito confiável de saber como um servidor Web especifico trata os parâmetros é perguntando o dono do servidor.
+
+ +

Fragmentos

+ +
+
Anchor
+
#SomewhereInTheDocument é uma âncora para outra parte do próprio recurso. Uma âncora representa uma espécie de "marcador" dentro do recurso, dando ao navegador as instruções para mostrar o conteúdo localizado naquele ponto "marcado". Em um documento HTML, por exemplo, o navegador erá dar scroll para a ancora em um ponto definido; em um vídeo ou audio, o navegor erá tentar ir para o tempo que a âncora representa. Vale ressaltar que a parte após o #, também conhecido como identificador de fragmento, nunca é enviado ao servidor com o pedido. 
+
+ +

Notas de uso

+ +

Ao usar URLs em conteúdo {{Glossary("HTML")}} em geral se deve usar apenas alguns desses esquemas URL. Apenas os esquemas HTTP e HTTPS devem ser usados quando se faz referência a subrecursos — isto é, arquivos carregados como parte de um documento maior. Por razões de segurança, os navegadores estão reduzindo cada vez mais o suporte a FTP para o carregamento de subrecursos.

+ +

FTP ainda é aceito em alguns casos específicos de acesso direto, como quando a URL é digitada diretamente na barra do navegador ou como o alvo em um link, ainda que alguns navegadores possam delegar o carregamento do conteúdo FTP para outra aplicação.

+ +

Exemplos

+ +
https://developer.mozilla.org/en-US/docs/Learn
+tel:+1-816-555-1212
+git@github.com:mdn/browser-compat-data.git
+ftp://example.org/resource.txt
+urn:isbn:9780141036144
+
+ +

Especificações

+ + + + + + + + + + + + +
SpecificationTitle
{{RFC("7230", "Uniform Resource Identifiers", "2.7")}}Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing
+ +

Veja também

+ + diff --git a/files/pt-br/web/http/basics_of_http/index.html b/files/pt-br/web/http/basics_of_http/index.html new file mode 100644 index 0000000000..a89b456f12 --- /dev/null +++ b/files/pt-br/web/http/basics_of_http/index.html @@ -0,0 +1,61 @@ +--- +title: Básico sobre HTTP +slug: Web/HTTP/Basico_sobre_HTTP +translation_of: Web/HTTP/Basics_of_HTTP +--- +
{{HTTPSidebar}}
+ +

HTTP é um protocolo bem extensivo. Isso depende um pouco do conceito básico com noção de recursos e URIs, uma simples estrutura de mensagens, e uma estrutura de cliente-servidor para a comunicação ocorrer. Em cima destes conceitos básicos, várias versões surgiram ao longo do tempo, adicionando novas funcionalidades e novas semanticas para criar novos métodos HTTP ou cabeçalhos.

+ +

Artigos

+ +
+
Visão geral sobre HTTP
+
+

Descreve o que é HTTP e quais as regras para arquitetura Web, sua posição na lista de protocolos.

+
+
Evolução do HTTP
+
+

HTTP foi criada no inicio dos anos 1990 e vem evolindo ao longo do tempo. Esse artigo passa por sua história e descreve HTTP/0.9, HTTP/1.0, HTTP/1.1, e o moderno HTTP/2 bem como pequenas novidades adicionadas ao longo de seus anos.

+
+
Negociação entre versões HTTP
+
+

Explicações de como um cliente e um servidor conseguem negociar em uma versão expecífica do HTTP e enventuais atualizaçõs nos protocolos usados;

+
+
Recursos e URIs
+
+

Uma breve introdução sobre noção de recursos, identicadores e localizações na Web.

+
+
Identificando recursos na Web
+
Descreve como os recursos Web são referênciados e como encontrar eles.
+
Data URIs
+
+

Um tipo especifico de URIs que incorpora diretamente os recursos apresentados, Data URIs são muito convenientes, mas tem algumas ressalvas

+
+
Separando identidades e localização de recursos: O cabeçalho Alt-Svc HTTP
+
Na maioria das vezes, a indentidade ea localização de um recurso da Web são compartilhados, isso pode ser mudado com no cabeçalho {{HTTPHeader("Alt-Svc")}}.
+
MIME types
+
Desde HTTP/1.0, diferentes tipos de conteúdos poderam ser transmitidos. Esse artigo explica como funciona usando o {cabeçalho {HTTPHeader("Content-Type")}} e o MIME standard.
+
Escolhendo entre URLs www e sem-www
+
+

Ajuda de como usar o prefixo www no domínio ou não, esse artigo fala as consequencias da escolhe e também como fazer isso.

+
+
Fluxo de sessões HTTP
+
+

Esse artigo fundamente descreve uma típica sessão HTTP: o que acontece por trás do do navegador quando você clica em um link.

+
+
Mensagens HTTP
+
+

Mensagens HTTP transmitidas durante o pedido ou resposta tem uma clara estrutura; isso introduz descrição sobre essas estrutura no artigo, seus proprósitos e suas possibilidades.

+
+
Quadro e estrutura de mensagens no HTTP/2
+
+

HTTP/2 junta e representa mensagens do HTTP/1.x em um quadro binário. Esse artigo explica a estrutura do quadro, sua finalidade ea maneira como ele é codificado.

+
+
Gerenciamento de conexão no HTTP/1.x
+
HTTP/1.1 foi a primeira versão do HTTP a suportar conexão constante e canalizar elas. Esse artigo explica sobre estes dois conceitos.
+
Gerenciamento de conexão no HTTP/2
+
HTTP/2 Revisitou completamente como as conexões são criadas e mantidas: esse artigo explica como os quadros HTTP permitem multiplexação e resolver o bloco 'head-of-line' bloqueio das versões anteirores do HTTP.
+
Conteúdo da negociação
+
HTTP introduz um conjunto de cabeçalhos, começando com Accept- como o meio que o navegador anuncia o formato, linguagem, ou a codificação é preferida. Esse artigo explica como esse anuncio acontece, como o servidor é esperado para reagir e como será escolhido a melhor resposta.
+
diff --git a/files/pt-br/web/http/basics_of_http/mime_types/common_types/index.html b/files/pt-br/web/http/basics_of_http/mime_types/common_types/index.html new file mode 100644 index 0000000000..d8f2b6898d --- /dev/null +++ b/files/pt-br/web/http/basics_of_http/mime_types/common_types/index.html @@ -0,0 +1,336 @@ +--- +title: Lista Incompleta de tipos MIME +slug: Web/HTTP/Basico_sobre_HTTP/MIME_types/Complete_list_of_MIME_types +tags: + - Extensões HTTP + - Tipos MIME +translation_of: Web/HTTP/Basics_of_HTTP/MIME_types/Common_types +--- +
{{HTTPSidebar}}
+ +

Abaixo uma lista de tipos de MIME, associadas por tipos de documentos, ordenados por suas extensões comuns.

+ +


+ Há dois tipo MIME que são importantes para tipos padrões:

+ + + +

IANA é o registrador official de tipos de mídia MIME e mantém uma lista de todos tipos oficiais de MIME.  Esta tabela lista alguns tipos de MIME importantes para a Web.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ExtensãoTipo do documentoTipo MIME
.aacArquivo de audio AACaudio/aac
.abwDocumento AbiWordapplication/x-abiword
.arcArchive document (multiple files embedded)application/octet-stream
.aviArquivo de audio e vídeo  Intercalar AVIvideo/x-msvideo
.azwFormato eBook do Amazon Kindleapplication/vnd.amazon.ebook
.binQualquer tipo de dados bináriosapplication/octet-stream
.bzArquivo compactado  BZipapplication/x-bzip
.bz2Arquivo compactado  BZip2application/x-bzip2
.cshC-Shell scriptapplication/x-csh
.cssCascading Style Sheets (CSS)text/css
.csvComma-separated values (CSV)text/csv
.docMicrosoft Wordapplication/msword
.eotMS Embedded OpenType fontsapplication/vnd.ms-fontobject
.epubElectronic publication (EPUB)application/epub+zip
.gifGraphics Interchange Format (GIF)image/gif
.htm
+ .html
HyperText Markup Language (HTML)text/html
.icoIcon formatimage/x-icon
.icsiCalendar formattext/calendar
.jarJava Archive (JAR)application/java-archive
.jpeg
+ .jpg
JPEG imagesimage/jpeg
.jsJavaScript (ECMAScript)application/javascript
.jsonJSON formatapplication/json
.mid
+ .midi
Musical Instrument Digital Interface (MIDI)audio/midi
.mpegMPEG Videovideo/mpeg
.mpkgApple Installer Packageapplication/vnd.apple.installer+xml
.odpOpenDocument presentation documentapplication/vnd.oasis.opendocument.presentation
.odsOpenDocument spreadsheet documentapplication/vnd.oasis.opendocument.spreadsheet
.odtOpenDocument text documentapplication/vnd.oasis.opendocument.text
.ogaOGG audioaudio/ogg
.ogvOGG videovideo/ogg
.ogxOGGapplication/ogg
.otfOpenType fontfont/otf
.pngPortable Network Graphicsimage/png
.pdfAdobe Portable Document Format (PDF)application/pdf
.pptMicrosoft PowerPointapplication/vnd.ms-powerpoint
.rarRAR archiveapplication/x-rar-compressed
.rtfRich Text Format (RTF)application/rtf
.shBourne shell scriptapplication/x-sh
.svgScalable Vector Graphics (SVG)image/svg+xml
.swfSmall web format (SWF) or Adobe Flash documentapplication/x-shockwave-flash
.tarTape Archive (TAR)application/x-tar
.tif
+ .tiff
Tagged Image File Format (TIFF)image/tiff
.tsTypescript fileapplication/typescript
.ttfTrueType Fontfont/ttf
.vsdMicrosoft Visioapplication/vnd.visio
.wavWaveform Audio Formataudio/x-wav
.webaWEBM audioaudio/webm
.webmWEBM videovideo/webm
.webpWEBP imageimage/webp
.woffWeb Open Font Format (WOFF)font/woff
.woff2Web Open Font Format (WOFF)font/woff2
.xhtmlXHTMLapplication/xhtml+xml
.xls
+ .xlsx
Microsoft Excelapplication/vnd.ms-excel
+ application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.xmlXMLapplication/xml
.xulXULapplication/vnd.mozilla.xul+xml
.zipZIP archiveapplication/zip
.3gp3GPP audio/video containervideo/3gpp
+ audio/3gpp if it doesn't contain video
.3g23GPP2 audio/video containervideo/3gpp2
+ audio/3gpp2 if it doesn't contain video
.7z7-zip archiveapplication/x-7z-compressed
diff --git a/files/pt-br/web/http/basics_of_http/mime_types/index.html b/files/pt-br/web/http/basics_of_http/mime_types/index.html new file mode 100644 index 0000000000..3acce2553a --- /dev/null +++ b/files/pt-br/web/http/basics_of_http/mime_types/index.html @@ -0,0 +1,314 @@ +--- +title: MIME types +slug: Web/HTTP/Basico_sobre_HTTP/MIME_types +translation_of: Web/HTTP/Basics_of_HTTP/MIME_types +--- +
{{HTTPSidebar}}
+ +

MIME type é o mecanismo para dizer ao cliente a variedade de documentos transmitidos: a extensão de um nome de arquivo não tem significado na web. Portanto, é importante que o servidor esteja configurado corretamente, de modo que o MIME-type correto seja transmitido com cada documento. Os navegadores costumam usar o MIME-type para determinar qual ação usar como padrão para fazer quando um recurso é obtido.

+ +

Existem muitos tipos de documentos, por isso há muitos MIME-types. Neste artigo, listaremos os mais importantes para o desenvolvimento da Web, mas você pode encontrá-los para os tipos de documento aplicáveis ​​neste artigo dedicado: Lista completa de MIME types.

+ +

MIME types não são a única maneira de transmitir as informações do tipo de documento:

+ + + +

Na Web, apenas o MIME type é relevante e deve ser definido com cuidado. Navegadores e servidores usavam frequentemente heurísticas baseadas em sufixos ou números mágicos para definir o tipo MIME, verificar a coerência ou encontrar o tipo MIME correto quando apenas um tipo genérico foi fornecido.

+ +

Sintaxe

+ +

Estrutura geral

+ +
tipo/subtipo
+ +

A estrutura de um MIME type é muito simples; Consiste de um tipo e um subtipo, duas strings, separados por um '/'. Nenhum espaço é permitido. O tipo representa a categoria e pode ser um tipo discreto ou multipart. O subtipo é específico para cada tipo.

+ +

Um MIME type é case-insensitive mas tradicionalmente é escrito tudo em minúsculas.

+ +

Tipos discretos

+ +
text/plain
+text/html
+image/jpeg
+image/png
+audio/mpeg
+audio/ogg
+audio/*
+video/mp4
+application/octet-stream
+…
+ +

Tipos discretos indicam a categoria do documento, ele pode ser um dos seguintes:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TipoDescriçãoExemplos de subtipos típicos
textRepresenta qualquer documento que contenha texto e é teoricamente legivel para o ser humano.text/plain, text/html, text/css, text/javascript
imageRepresenta qualquer tipo de imagens. Os vídeos não estão incluídos, embora imagens animadas (como gif animado) sejam descritas com um tipo de imagem.image/gif, image/png, image/jpeg, image/bmp, image/webp
audioRepresenta qualquer tipo de arquivo de audioaudio/midi, audio/mpeg, audio/webm, audio/ogg, audio/wav
videoRepresenta qualquer tipo de arquivo de videovideo/webm, video/ogg
applicationRepresenta qualquer tipo de dados binários.application/octet-stream, application/pkcs12, application/vnd.mspowerpoint, application/xhtml+xml, application/xmlapplication/pdf
+ +

Para documentos de texto sem um subtipo especifico, text/plain deverá ser usado. Assim como, para documentos binários sem subtipo especifico ou conhecido, application/octet-stream deverá ser usado.

+ +

Tipos de multipart

+ +
multipart/form-data
+multipart/byteranges
+ +

Multipart types indicam uma categoria de documento que são quebrados em partes distintas, muitas vezes com diferentes tipos MIME. É uma maneira de representar um documento composto. Com exceção de multipart/form-data, que são usados ​​em relação de formularios HTML e metodo {{HTTPMethod("POST")}}, e multipart/byteranges que são usados em conjunto com {{HTTPStatus("206")}} Mensagem de status de conteúdo parcial para enviar apenas um subconjunto de um documento inteiro, o HTTP não manipula documentos de várias partes de uma maneira específica: a mensagem é simplesmente transmitida ao navegador (o que provavelmente irá propor uma janela Salvar como, sem saber como exibir o documento).

+ +

Importantes MIME types para desenvolvedores Web

+ +

application/octet-stream

+ +

Este é o valor padrão para um arquivo binario. Como é um arquivo binário desconhecido, os navegadores geralmente não irá executá-lo automaticamente, ou irá perguntar se ele deve ser executado. Eles tratam-na como se o cabeçalho {{HTTPHeader("Content-Disposition")}} fosse definido com o anexo de valor e propusessem um "Salvar como".

+ +

text/plain

+ +

Este é o valor padrão para arquivos de texto. Mesmo se realmente significa arquivo textual desconhecido, os navegadores assumem que eles podem exibi-lo.

+ +
+

Note que text/plain não significa qualquer tipo de dados textuais. Se eles esperam um tipo específico de dados textuais, eles provavelmente não consideram uma correspondência. Especificamente se eles baixarem um arquivo text/plain de um elemento {{HTMLElement ("link")}} declarando arquivos CSS, eles não o reconhecerão como arquivos CSS válidos se forem apresentados com text/plain.
+ O CSS mime tipo text/css deve ser usado.

+
+ +

text/css

+ +

Quaisquer arquivos CSS que têm de ser interpretados como tal em uma página da Web devem ser dos arquivos de text/css. Muitas vezes os servidores não reconhecem arquivos com o sufixo .css como arquivos CSS, em vez disso, enviam-nos com o tipo MIME de text/plain ou application/octet-stream: nesses casos, eles não serão reconhecidos como arquivos CSS pela maioria dos navegadores e serão silenciosamente ignorados.
+ Atenção especial tem de ser paga para servir arquivos CSS com o tipo correto.

+ +

text/html

+ +

Todo o conteúdo HTML deve ser exibido com este tipo. Tipos MIME alternativos para XHTML (como application/xml+html) são em sua maioria inúteis hoje em dia (HTML5 unificou esses formatos).

+ +

Images types

+ +

Apenas um punhado de tipos de imagem são amplamente reconhecidos e são considerados seguros na Web, prontos para uso em uma página da Web:

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
MIME typeImage type
image/gifGIF images (Compressão sem perdas, substituído por PNG)
image/jpegJPEG images
image/pngPNG images
image/svg+xmlSVG images (vector images)
+ +

Há uma discussão para adicionar WebP (image / webp) a esta lista, mas como cada novo tipo de imagem irá aumentar o tamanho de um codebase, isso pode introduzir novos problemas de segurança, então os fornecedores de navegador são cautelosos em aceitá-lo.

+ +

Outros tipos de imagens podem ser encontrados em documentos da Web. Por exemplo, muitos navegadores suportam tipos de imagem de ícones para favicons ou similares.
+ Em particular, as imagens do ICO são suportadas neste contexto com o tipo MIME image/x-icon.

+ +

Audio and video types

+ +

Como as imagens, o HTML não define um conjunto de tipos suportados para usar com os elementos {{HTMLElement("audio")}} e {{HTMLElement("video")}} , de modo que apenas um grupo relativamente pequeno deles pode ser Usado na Web. Os formatos de mídia suportados pelos elementos de áudio e vídeo em HTML explicam os codecs e formatos de contêiner que podem ser usados.
+
+ O tipo MIME de tais arquivos principalmente representam os formatos de contêiner e os mais comuns em um contexto da Web são:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MIME typeAudio or video type
audio/wave
+ audio/wav
+ audio/x-wav
+ audio/x-pn-wav
Um arquivo de áudio no formato de recipiente WAVE. O codec de áudio PCM (WAVE codec "1") é freqüentemente suportado, mas outros codecs têm suporte mais limitado (se houver).
audio/webmUm arquivo de áudio no formato de contêiner WebM. Vorbis e Opus são os codecs de áudio mais comuns.
video/webmUm arquivo de vídeo, possivelmente com áudio, no formato de contêiner WebM. VP8 e VP9 são os codecs video os mais comuns usados ​​dentro dele; Vorbis e Opus os codecs de áudio mais comuns.
audio/oggUm arquivo de áudio no formato de contêiner OGG. Vorbis é o codec de áudio mais comum usado em tal recipiente.
video/oggUm arquivo de vídeo, possivelmente com áudio, no formato de contêiner OGG. Theora é o codec video usual usado dentro dele; Vorbis é o codec de áudio usual.
application/oggUm arquivo de áudio ou vídeo usando o formato de contêiner OGG. Theora é o codec video usual usado dentro dele; Vorbis é o codec de áudio usual.
+ +

multipart/form-data

+ +

O tipo multipart/form-data pode ser usado ao enviar o conteúdo de um  formulario HTML preenchido do navegador para o servidor. Como um documento multipart formal, consiste em partes diferentes, delimitado por um limite (uma seqüência de caracteres começando com um traço duplo '--'). Cada parte é uma entidade por si só, com seus próprios cabeçalhos HTTP, {{HTTPHeader("Content-Disposition")}}, e {{HTTPHeader("Content-Type")}} Para os campos de upload de arquivos, e os mais comuns ({{HTTPHeader("Content-Length")}} É ignorada como a linha de limite é usada como o delimitador).

+ +
Content-Type: multipart/form-data; boundary=aBoundaryString
+(Outros cabeçalhos associados ao documento em várias partes como um todo)
+
+--aBoundaryString
+Content-Disposition: form-data; name="myFile"; filename="img.jpg"
+Content-Type: image/jpeg
+
+(dados)
+--aBoundaryString
+Content-Disposition: form-data; name="myField"
+
+(dados)
+--aBoundaryString
+(mais subpartes)
+--aBoundaryString--
+
+
+ +

O seguinte formulario:

+ +
<form action="http://localhost:8000/" method="post" enctype="multipart/form-data">
+  <input type="text" name="myTextField">
+  <input type="checkbox" name="myCheckBox">Check</input>
+  <input type="file" name="myFile">
+  <button>Send the file</button>
+</form>
+ +

Enviará esta mensagem:

+ +
POST / HTTP/1.1
+Host: localhost:8000
+User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:50.0) Gecko/20100101 Firefox/50.0
+Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
+Accept-Language: en-US,en;q=0.5
+Accept-Encoding: gzip, deflate
+Connection: keep-alive
+Upgrade-Insecure-Requests: 1
+Content-Type: multipart/form-data; boundary=---------------------------8721656041911415653955004498
+Content-Length: 465
+
+-----------------------------8721656041911415653955004498
+Content-Disposition: form-data; name="myTextField"
+
+Test
+-----------------------------8721656041911415653955004498
+Content-Disposition: form-data; name="myCheckBox"
+
+on
+-----------------------------8721656041911415653955004498
+Content-Disposition: form-data; name="myFile"; filename="test.txt"
+Content-Type: text/plain
+
+Simple file.
+-----------------------------8721656041911415653955004498--
+
+
+ +

multipart/byteranges

+ +

O tipo MIME multipart/byteranges é usado no contexto de enviar respostas parciais para o navegador. Quando o código de status de conteúdo parcial {{HTTPStatus("206")}} é enviado, este tipo MIME é usado para indicar que o documento é composto de várias partes, uma para cada um do intervalo solicitado. Como outros tipos de multipart, o {{HTTPHeader("Content-Type")}} usa a diretiva de limite para definir a seqüência de limites. Cada uma das diferentes partes tem um cabeçalho {{HTTPHeader("Content-Type")}} com o tipo real do documento e um {{HTTPHeader("Content-Range")}} com o intervalo que representam.

+ +
HTTP/1.1 206 Partial Content
+Accept-Ranges: bytes
+Content-Type: multipart/byteranges; boundary=3d6b6a416f9b5
+Content-Length: 385
+
+--3d6b6a416f9b5
+Content-Type: text/html
+Content-Range: bytes 100-200/1270
+
+eta http-equiv="Content-type" content="text/html; charset=utf-8" />
+    <meta name="vieport" content
+--3d6b6a416f9b5
+Content-Type: text/html
+Content-Range: bytes 300-400/1270
+
+-color: #f0f0f2;
+        margin: 0;
+        padding: 0;
+        font-family: "Open Sans", "Helvetica
+--3d6b6a416f9b5--
+ +

Importância de definir o MIME type correto

+ +

A maioria dos servidores web envia recursos de tipo desconhecido usando o tipo MIME de application/octet-stream padrão. Por razões de segurança, a maioria dos navegadores não permite definir uma ação padrão personalizada para esses recursos, forçando o usuário a armazená-lo no disco para usá-lo. Algumas configurações de servidor incorretamente exibidas ocorrem com os seguintes tipos de arquivo:

+ + + +

MIME sniffing

+ +

Na ausência de um tipo MIME, ou em alguns outros casos em que um cliente acredita que estão incorrectamente definidos, os navegadores podem conduzir MIME sniffing, que está adivinhando o tipo MIME correto, olhando para o recurso. Cada navegador executa isso de forma diferente e em circunstâncias diferentes. Existem algumas preocupações de segurança com esta prática,
+ Como alguns tipos MIME representam conteúdo executável e outros não. Os servidores podem bloquear MIME sniffing enviando o {{HTTPHeader("X-Content-Type-Options")}} ao longo do {{HTTPHeader("Content-Type")}}.

+ +

See also

+ + + +
+
+
-- cgit v1.2.3-54-g00ecf