Colección de citas famosas - Slogan de motivación - Análisis de principios de carga de archivos ASP y ejemplos de implementación

Análisis de principios de carga de archivos ASP y ejemplos de implementación

Resumen La carga de varios tipos de archivos en entornos de aplicaciones basados ​​en / siempre ha sido uno de los problemas que afecta a las aplicaciones de administración de archivos de los usuarios. Existen tres mecanismos para cargar archivos en HTTP RFC PUT y WebDAV. El método de implementación es utilizar un nuevo tipo de objetos File y ADO Stream introducidos en RFC. Este artículo analiza el método de carga y el principio de implementación anteriores y brinda un ejemplo de solución específica para el objeto ASP FILE.

Actualmente, las aplicaciones se basan en el. / son más populares Uno de los métodos comunes cuando los usuarios necesitan transferir archivos a Internet es ejecutar FTP y configurar el directorio FTP predeterminado de cada usuario como el directorio de inicio web del usuario. De esta manera, el usuario puede ejecutar el programa cliente FTP y cargarlos. archivos al directorio web especificado. Esto requiere que los usuarios sepan cómo usar el programa cliente FTP, por lo que esta solución solo es factible para usuarios experimentados que estén familiarizados con FTP si podemos integrar la función de carga de archivos con la Web para que los usuarios puedan. complete la tarea de carga usando solo la Web, esto será muy útil para ellos. Sin embargo, debido a la limitación de que el objeto del sistema de archivos solo puede transmitir archivos de texto, el mayor problema de ASP es la carga de archivos. es cómo cargar archivos en una página web basada en el protocolo HTTP.

Tres mecanismos para cargar a través de HTTP

Hay tres mecanismos para cargar a través de HTTP RFC PUT y WebDAV

PUT introduce un nuevo verbo HTTP en HTTP cuando la web recibe un PUT HTTP y el nombre del objeto autenticará al usuario para recibir el contenido de la secuencia HTTP y lo almacenará directamente en la web, ya que esto puede ser perjudicial para un sitio web y también pierde la mayor ventaja de HTTP: la programabilidad en el caso de PUT. Manejar la solicitud usted mismo no tiene espacio para que intervengan las aplicaciones CGI o ASP. La única manera de que su aplicación capture PUT es operar el filtro ISAPI capa en un nivel bajo Por las razones correspondientes, la aplicación de PUT es muy limitada

Y WebDAV permite la autenticación distribuida y la traducción de contenido web. Introduce varios verbos HTTP nuevos para permitir. bloquear/desbloquear el registro/verificación del contenido web a través de la carga HTTP. Guardar en la web en Office se implementa a través de WebDAV. Sin embargo, si es necesario, se trata de cargar contenido. cargue archivos dentro de su aplicación web, WebDAV no le sirve de nada. Al igual que HTTP PUT, los verbos de WebDAV no se interpretan. En lugar de una aplicación web, necesita trabajar en la capa de filtrado ISAPI para acceder a estos verbos de WebDAV e interpretar el contenido. su aplicación Estándar Es una idea muy simple pero poderosa definir un nuevo tipo en el campo del formulario?lt;INPUT TYPE= FILE gt y agregar un esquema de codificación diferente al formulario mismo en lugar de usar el típico?lt;FORM ACTION = formproc asp METHOD= POST gt; En su lugar, utilice ?lt; FORM ACTION= formproc asp METHOD= POST ENCTYPE= multipart/form data gt;

Este esquema de codificación es menos eficiente cuando se transmiten grandes cantidades de datos. El esquema de codificación de formulario codificado por URL de aplicación provincial/x es mucho más eficiente. La codificación de URL solo tiene caracteres muy limitados.

Cualquier carácter fuera del conjunto de caracteres debe reemplazarse por nn, donde nn representa el dígito hexadecimal correspondiente. Por ejemplo, incluso los caracteres de espacio comunes deben reemplazarse por nn. RFC utiliza codificación MIME de varias partes como suele ocurrir en los mensajes de correo electrónico. Verá, no se utiliza ninguna codificación para transferir grandes cantidades de datos, sino solo unos pocos encabezados simples pero útiles alrededor de los datos. Los principales proveedores han adoptado el botón de navegación recomendado... y los usuarios pueden abrir archivos localmente fácilmente usando... el cuadro de diálogo para seleccionar. el archivo a cargar

El RFC aún deja la mayoría de los métodos flexibles de carga de archivos en su aplicación web. PUT tiene un uso limitado. WebDAV es útil para autores de contenido como usuarios de FrontPage, pero no para aquellos que desean hacerlo. Rara vez lo utilizan los desarrolladores web que agregan cargas de archivos a aplicaciones web, por lo que RFC es la mejor manera de agregar cargas de archivos a aplicaciones web

El Posting Acceptor ASP se proporciona de forma gratuita en aplicaciones reales. No entiende multiparte. El esquema de codificación de datos /form en su lugar proporciona Posting Acceptor Posting Acceptor es una aplicación ISAPI que acepta REPOST en una página ASP una vez completada la carga

SA FileUp de SOfare Artisans es el primer Active Server comercial. Se ha mejorado varias veces. veces y ahora existe como un ASP puro

En segundo lugar, análisis del principio de implementación de la carga de archivos basado en ASP

El principio básico es utilizar el método BinaryRead del objeto ADO Stream para transferir todos los datos en el FORMULARIO Lea los datos del archivo requeridos y guárdelos como un archivo binario

El siguiente es un ejemplo de la página de carga de archivos () ?lt;gt;lt;bodygt;lt; nombre del formulario = Método de carga = Tipo de enc de publicación = datos multiparte/formulario Acción = Cargar asp gt; lt; tipo de entrada = nombre de archivo = Nombre de archivo gt; lt; TIPO DE ENTRADA = Enviar VALOR = Cargar gt; lt;/TDgt; lt;/formgt ;lt;/bodygt;lt ;/gt; El objeto de archivo se usa en el programa para que los datos originales leídos usando el método BinaryRead en Upload asp no sean solo los datos del archivo seleccionado en sí, sino que también incluyan el tipo de ruta de el archivo en el disco duro del usuario, la página de envío del formulario, etc. La descripción de la información significa que necesitamos extraer el contenido específico del archivo según el análisis de los datos, la línea divisoria entre la información del encabezado y la. Los datos son dos pares de retornos de carro y avances de línea. También hay información de separación al final. ¿Podemos usar un método similar al siguiente para obtener los datos del archivo? Dim FormData FormSize DataStart CLStr DivStrFormSize=Request TotalBytesFormData=Request BinaryRead(FormSize). CLStr=ChrB( )amp;ChrB( )DataStart=InStrB(FormData CLStramp; CLStr) es la longitud de dos pares de caracteres de retorno de carro y avance de línea DivStr=LeftB(FormData InStrB(FormData CLStr ) )DataSize=InStrB(DataStart FormData DivStr ) DataStart FormData=MidB(FormData DataStart

DataSize) FormData es el contenido del archivo. El procesamiento correspondiente se puede realizar según sea necesario en el medio. El trabajo final es guardar el archivo. Una es utilizar el método de operación de archivo binario en el programa. como VB o VC Agregue la biblioteca de tipos adecuada y finalmente compílela en un archivo DLL. Luego registre el archivo DLL para su uso. ¿El procedimiento de almacenamiento de archivos es el siguiente? objContext As ObjectContext Dim objRequest As RequestSet objContext=GetObjectContext() Set objRequest=objContext( Request ) El siguiente fragmento de código está relacionado con la operación de almacenamiento de archivos Dim FormData() As Byte CLStr DivStr Dim DataStart As Long DataSize As Long DataSize=objRequest TotalBytes Redim FormData(DataSize) FormData=objRequest BinaryRead(DataSize) Cree un archivo binario y escriba FormData en él. Abra el nombre de ruta para binario como Put # FormData Close # SaveFile= End Function El segundo método es utilizar el método de operación de archivos binarios proporcionado en ADO STREAM para completar la declaración de guardar el archivo es StreamOBJ SaveToFile (fileName). En esta operación, podemos almacenar las operaciones relevantes en un archivo de clase e incluir directamente el archivo de clase en el programa ASP durante la aplicación. Para métodos de procesamiento específicos, consulte. a la introducción correspondiente 3. Ejemplos de métodos de implementación de carga de archivos se pueden implementar usando o sin métodos. Por ejemplo, Microsoft Posting Acceptor (mpa para abreviar) es una instalación gratuita lanzada por la empresa y es más conveniente para mpa, simplemente ejecute su archivo de instalación. Generalmente, en forma de dll, necesitamos registrarlo. Por ejemplo, para usar aspcnUP dll, simplemente ejecute regsvr [path\]aspcnUP dll en Windows. El sistema mostrará un mensaje de registro exitoso y podrá usarlo. clases no cargadas como upload_ xsoft están en uso ¿Solo incluye las siguientes declaraciones en el controlador lt;! #include FILE= upload inc gt;

Cargue el código fuente de algunos tipos de archivos (cargar asp) ?lt; @ language= vbscriptSet fileUP=Server CreateObject( aspcn Upload ) fileUP Maxsize=fileUP Path= d:\upfilefileUP Upload For i= to fileUP Count fieldname=fileUP FieldName( i) Si fileUP FileType(fieldname)= zip O ileUP FileType(fieldname)= rar Entonces fileUP Guardar fieldnameEnd IfNext Establecer fileUP=Nothinggt 4. Conclusión: Los modelos de aplicaciones todavía se están desarrollando rápidamente en ASP. NET tiene una función de carga de archivos incorporada, que es muy simple y cómoda de usar. Como tecnología completamente nueva, ASP. NET no es sólo una simple actualización de ASP. Es un marco completamente nuevo para el desarrollo web, que contiene muchas características nuevas de ASP. NET proporciona un código más fácil de escribir con una estructura más clara. Usando estos códigos, podremos reutilizar y compartir más fácilmente para desarrollar programas cada vez más prácticos lishixinzhi/Article/program/net/201311/13562