diff options
Diffstat (limited to 'files/es/web/http/headers/content-disposition')
-rw-r--r-- | files/es/web/http/headers/content-disposition/index.html | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/files/es/web/http/headers/content-disposition/index.html b/files/es/web/http/headers/content-disposition/index.html new file mode 100644 index 0000000000..62c66192e7 --- /dev/null +++ b/files/es/web/http/headers/content-disposition/index.html @@ -0,0 +1,144 @@ +--- +title: Content-Disposition +slug: Web/HTTP/Headers/Content-Disposition +translation_of: Web/HTTP/Headers/Content-Disposition +--- +<div>{{HTTPSidebar}}</div> + +<div>En una respuesta HTTP regular, el encabezado <code><strong>Content-Disposition</strong></code> indica si el contenido se espera que se muestre en línea en el navegador, esto es, como una o como parte de una página web, o como un archivo adjunto, que se puede descargar y guardar localmente.</div> + +<div> </div> + +<div>En un cuerpo <code>multipart/form-data</code>, el encabezado general <strong><code>Content-Disposition</code> </strong>puede ser utilizado en la subparte de un cuerpo multipartes para dar información acerca del campo al que aplica. La subparte es delimitada por el <em>boundary</em> (límite) definido en el encabezado {{HTTPHeader("Content-Type")}}. Cuando se utiliza en el propio cuerpo, <code>Content-Disposition</code> no tiene efecto.</div> + +<div> </div> + +<div>El encabezado <code>Content-Disposition </code>está definido en el contexto de mensajes MIME para correos electrónicos, pero sólo un subconjuto de los parámetros posibles aplican a formularios HTTP y peticiones {{HTTPMethod("POST")}}. Sólo el valor <code>form-data</code>, como las directivas opcionales <code>name</code> and <code>filename</code>, pueden ser utilizadas en el contexto HTTP.</div> + +<p> </p> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Tipo de encabezado</th> + <td>{{Glossary("Response header")}} (para el cuerpo principal)<br> + {{Glossary("General header")}} (para una subparte de un cuerpo multipartes)</td> + </tr> + <tr> + <th scope="row">{{Glossary("Forbidden header name")}}</th> + <td>no</td> + </tr> + </tbody> +</table> + +<p> </p> + +<h2 id="Sintaxis">Sintaxis</h2> + +<h3 id="Como_encabezado_de_respuesta_para_cuerpo_principal">Como encabezado de respuesta para cuerpo principal</h3> + +<p>El primer parámetro en el contexto HTTP o es <code>inline</code> (valor predeterminado, indicando que puede ser mostrado dentro de una página web, o como la página web) o <code>attachment</code> (indicando que será descargado; la mayoría de los navegadores mostrando un diálogo 'Guardar como', prellenado con el valor del parámetro <code>filename</code>, en caso de estar presente).</p> + +<pre class="syntaxbox">Content-Disposition: inline +Content-Disposition: attachment +Content-Disposition: attachment; filename="filename.jpg"</pre> + +<h3 id="Como_encabezado_para_un_cuerpo_multipartes">Como encabezado para un cuerpo multipartes</h3> + +<p>El primer parámetro en el contexto HTTP siempre es <code>form-data</code>; parámetros adicionales son insensibles a mayúsculas y tienen argumentos que usan sintaxis de textos entre comillas después del signo de <code>'='</code>. Múltiples parámetros se separan por punto y coma (<code>';'</code>).</p> + +<pre class="syntaxbox">Content-Disposition: form-data +Content-Disposition: form-data; name="fieldName" +Content-Disposition: form-data; name="fieldName"; filename="filename.jpg"</pre> + +<h3 id="Directivas">Directivas</h3> + +<dl> + <dt><code>name</code></dt> + <dd>Es seguida de un texto que contiene el nombre del campo de HTML en el formulario a la que el contenido de la subparte refiere. Cuando se usan múltiples archivos en el mismo campo (por ejemplo, el atributo {{htmlattrxref("multiple", "input")}} de un elemento <code>{{HTMLElement("input","<input type=file>")}}</code>), puede haber varias subpartes con el mismo nombre.<br> + Un <code>name</code> con valor de <code>'_charset_'</code> indica que la parte no es un campo HTML, sino el conjunto de caracteres predeterminado para partes sin información explícita sobre su conjunto de caracteres.</dd> + <dt><code>filename</code></dt> + <dd> + <p>Es seguida de un texto que contiene el nombre original del archivo transmitido. Siempre es opcional y no debe ser utilizado a ciegas por la aplicación: información sobre la ruta debe ser despojada, y se debe realizar una conversión a las reglas del sistema de archivos del servidor. Este parámetro provee mayormente información indicativa. Cuando se usa en combinación con <code>Content-Disposition: attachment</code>, es utilizado como el nombre de archivo predeterminado en caso de que se presente al usuario un diálogo de 'Guardar como'.</p> + </dd> + <dt><code>filename*</code></dt> + <dd> + <p>Los parámetros <code>filename</code> y <code>filename*</code> difieren únicamente en que <code>filename*</code> utiliza encodeado definido en <a href="https://tools.ietf.org/html/rfc5987">RFC 5987</a>. Cuando ambos están presentes en un valor de campo de encabezado simple, <code>filename*</code> es preferido sobre <code>filename</code> cuando ambos están presentes y entendidos.</p> + </dd> +</dl> + +<h2 id="Ejemplos">Ejemplos</h2> + +<p>Una respuesta generando el diálogo 'Guardar como':</p> + +<pre>200 OK +Content-Type: text/html; charset=utf-8 +Content-Disposition: attachment; filename="genial.html" +Content-Length: 22 + +<HTML>Guárdame!</HTML> + +</pre> + +<p>Este archivo simple de HTML será guardado como una descarga regular en lugar de mostrarse en el navegador. La mayoría de los navegadores propondrá guardarlo como <code>genial.html</code> ya que es el nombre (predeterminado).</p> + +<p>Un ejemplo de un formulario HTML, publicado usando el formato <code>multipart/form-data</code> que hace uso del encabezado <code>Content-Disposition</code>:</p> + +<pre>POST /test.html HTTP/1.1 +Host: example.org +Content-Type: multipart/form-data;boundary="boundary" + +--boundary +Content-Disposition: form-data; name="campo1" + +valor1 +--boundary +Content-Disposition: form-data; name="campo2"; filename="ejemplo.txt" + +valor2 +--boundary--</pre> + +<h2 id="Especificaciones">Especificaciones</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Especificación</th> + <th scope="col">Título</th> + </tr> + <tr> + <td>{{RFC("7578")}}</td> + <td>Returning Values from Forms: multipart/form-data (Retornando Valores desde Formularios: multipart/form-data)</td> + </tr> + <tr> + <td>{{RFC("6266")}}</td> + <td>Use of the Content-Disposition Header Field in the Hypertext Transfer Protocol (HTTP) (Uso del campo de encabezado Content-Disposition en HTML)</td> + </tr> + <tr> + <td>{{RFC("2183")}}</td> + <td>Communicating Presentation Information in Internet Messages: The Content-Disposition Header Field (Comunicando Información de Presentación en Mensajes de Internet: el Campo de Encabezado Content-Disposition)</td> + </tr> + </tbody> +</table> + +<h2 id="Compatibilidad_con_navegadores">Compatibilidad con navegadores</h2> + +<p class="hidden">La tabla de compatibilidad en esta página es generada a partir de datos estructurados. Si te gustaría contribuir, por favor revisa <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> y envíanos un pull request.</p> + +<p>{{Compat("http.headers.Content-Disposition")}}</p> + +<h2 id="Notas_de_compatibilidad">Notas de compatibilidad</h2> + +<ul> + <li> + <p>Firefox 5 maneja el encabezado de respuesta HTTP <code>Content-Disposition</code> más efectivamente si ambos parámetros <code>filename</code> y <code>filename*</code> están presentes; observa todos los nombres presentes, usando el parámetro <code>filename*</code> si uno está disponible, incluso si el parámetro <code>filename</code> está incluido antes. Previamente, el primer parámetro en encontrarse sería usado, de este modo se previene el uso de un nombre más apropiado. Mira {{bug(588781)}}.</p> + </li> +</ul> + +<h2 id="Ver_también">Ver también</h2> + +<ul> + <li><a href="/en-US/docs/Web/Guide/HTML/Forms">Formularios HTML</a></li> + <li>El {{HTTPHeader("Content-Type")}} definiendo el límite de un cuerpo multipartes.</li> + <li>La interfaz {{domxref("FormData")}} usada para manipular datos de formulario para uso en la API {{domxref("XMLHttpRequest")}}.</li> +</ul> |