Cuando escribe aplicaciones del lado del servidor que usan ASP, debe confiar en los componentes ActiveX a las funciones de aplicaciones web potentes, tales como: debe conectarse a la base de datos, operar la base de datos en línea, etc.
En los dos artículos anteriores, el autor introdujo los métodos de uso de Rotator AD, el acceso a la base de datos y otros componentes.
1. Los componentes de las capacidades del navegador son bien conocidos, y no todos los navegadores admiten todos los aspectos de la tecnología de Internet actual. Hay algunas características que algunos navegadores admiten, pero otros no, como: controles ActiveX, transmisiones de imágenes, HTML dinámico, flash y programas de secuencias de comandos. Utilizando el componente de capacidades del navegador de ASP, puede diseñar páginas web inteligentes para presentar contenido en un formato que se adapte al rendimiento del navegador. El componente de capacidades del navegador puede crear un objeto BrowserType que proporcione a los scripts de usuario descripciones funcionales del navegador web cliente. La razón por la cual este componente puede reconocer la versión del navegador del cliente se debe principalmente a que cuando el navegador del cliente envía una solicitud de página al servidor, enviará automáticamente el título de un agente de usuario HTTP, que es un carácter ASCII que declara el navegador y su versión . cadena. El componente de capacidades del navegador asigna el agente de usuario al navegador indicado en el archivo browscap.ini e identifica el navegador del cliente a través de las propiedades del objeto BrowserType. Si el objeto no puede encontrar un elemento que coincida con el título en el archivo browser.ini, se utilizarán las propiedades predeterminadas del navegador. Si el objeto no tiene una coincidencia encontrada y la configuración predeterminada del navegador se especifica en el archivo browser.ini, establece cada propiedad en la cadena desconocida. De manera predeterminada, el archivo browser.ini se almacena en el directorio Windows/System/Inersrv (si 95/98+PWS4) o NT/System32/Inersrv (IF NT), puede editar este archivo de texto para agregar modificar el archivo por sus propios atributos o basados en el último archivo de actualización de la versión del navegador lanzado. Consulte el siguiente proceso de checkcookie (), use el atributo de cookie del objeto BrowserCap para determinar si el navegador del cliente admite cookies y devuelve información:
< %
Sub checkcookie ()
Establecer browserCap = server.CreateObject (mswc.browserType)
Si browserCap.cookie = verdadero entonces
Respuesta. ¡Escribe tu navegador admite cookies!
demás
Respuesta. ¡Escribe lo siento, el navegador que estás usando no admite cookies!
final si
final
%>
Para obtener más información sobre el componente de capacidades del navegador, consulte el diseño dinámico de sitios web de dieciocho artes marciales-asp (2).
2. Componente de acceso a archivos Si tiene la edad suficiente en la red, debe haber visto el libro de visitas CGI en la era del dinosaurio, que es el primer prototipo del libro de visitas web. En ese momento, era muy difícil conectarse a la base de datos de back-end del servidor en aplicaciones web basadas en Internet, por lo que la información histórica en el libro de visitas no se almacenó en la base de datos de backend como lo es hoy. Entonces, ¿dónde se almacenan estos datos? La respuesta es un archivo de texto. La información del cliente se puede guardar, pero escribir tales programas CGI es muy engorroso.
#!/usr/local/bin/perl
# Ubicación perl uno su servidor
Imprima el tipo de contenido: texto/simple/n/n;
if ($ env {'request_method'} eqpost) {
leer (stdin, $ buffer, $ env {'content_length'});
} elsif ($ env {'request_method'} eqget) {
$ buffer = $ env {'query_stirng'};
}
@pares = división (/&/, $ buffer);
foreach $ par (@Pairs) {
($ name, $ value) = split (/=/, $ par);
$ valor = ~ tr/+//;
$ valor = ~ s/%([AF AF 0-9] [AF AF 0-9])/Pack (C, Hex ($ 1))/Eg;
$ Form {$ name} = $ value;}
$ file_name = guestbook.txt; #file nombre
#Contenido específico
Abrir (archivo, >> $ file_name) || Die Error al abrir el archivo;
Imprimir tiempo de registro del archivo: $ date /n /n;
Imprimir el nombre del archivo: $ form {'name'};
Imprimir Unidad de archivo: $ form {'Company'}/n;
Imprimir teléfono del archivo: $ form {'phone'}
Dirección del archivo de impresión: $ form {'dirección'}/n;
Imprime el código ZIP del archivo: $ form {'zip'}
Imprimir dirección de correo electrónico del archivo: $ form {'correo electrónico'}/n;
Imprimir Comentario de retorno de archivo: $ form {'content'}
Cerrar (archivo)
Puede sentir que en comparación con ASP, este tipo de programa CGI es más pobre en legibilidad y operabilidad. Entonces, ¿debe preguntar si ASP también puede escribir archivos directamente en el servidor? La respuesta es, por supuesto, sí. Pero los amigos inteligentes pueden pensar que, dado que la conexión entre ASP y la base de datos web es tan conveniente, ¿por qué necesitamos escribir información del cliente en archivos de texto no es esta función de ASP extravagante? De hecho, para aquellas aplicaciones web comunes, como libros de visitas y BB, no podemos reemplazar la base de datos con la escritura de archivos de texto en términos de eficiencia de ejecución del programa o facilidad de uso, pero en algunas aplicaciones web escribir archivos de texto en el campo es un estandarizado y un estandarizado y un Método relativamente conveniente en comparación con una base de datos. Si está familiarizado con NT, debe saber que NT tiene un mecanismo de seguridad muy potente, que puede guardar automáticamente casi todas las operaciones del servidor y la información de conexión en un archivo con el nombre de sufijo. se puede usar en la web para registrar alguna información de inicio de sesión del cliente. El siguiente programa utiliza la característica de la lectura de ASP y la escritura de archivos de texto para crear una función que registra automáticamente los registros de voz de cada usuario en un programa BBS web.
< %
Establecer fs = createObject (scripting.filesystemObject)
Prevalecimiento = 1
'Abra el archivo en modo de solo lectura. Este archivo no se puede escribir.
Forappending = 8
'Abra el archivo y escríbelo al final del archivo.
TristateUsedefault = -2
Tristatetrue = -1
TristateFalse = 0
'------------------------------
servermap = server.mappath (/bbs/log/)
'Sistema de mapeo Ruta física
temp = Servermap &/& Year (fecha) y mes (fecha) y//
'Obtenga la ruta física y el tiempo del sistema y use esto como la ruta física almacenada en el archivo de registro
Si no fs.folderexists (temp) entonces
Fs.CreateFolder (temp)
final si
'Verifique si existe la carpeta, de lo contrario se creará automáticamente
Dim syslog
Tempname tenuoso
tempname = fecha
syslog = temp & tempname & .log
'El nombre del archivo es E:/bbs/log/mes/mes día.log
li = user &&& now && request.servervariAnbles (remoto_addr) && tempfile &&& Letter && title
'El formato de registro de archivo de registro es: nombre de usuario y tiempo de envío y ruta de IP y archivo de usuario y área de mensajes y título
Si fs.fileExists (syslog) entonces
Establecer ss = fs.opeNextFile (syslog, forappending, verdadero)
demás
establecer ss = fs.createTextFile (syslog, forwriting, falso)
final si
'Verifique si el archivo de registro existe.
ss.writel (l
i)
ss.
'------------------------------------------------- -------------------------------------------------- --------------------------
%>
Si no comprende completamente el programa anterior, escuche las instrucciones del autor. El componente de acceso a archivos proporciona métodos y propiedades que se pueden usar para acceder al sistema de archivos de una computadora. Podemos usar el componente de acceso a archivos para crear un objeto FileSystemObject. Después de que se crea el objeto, puede acceder al archivo a través de él. Hay dos métodos más utilizados para el objeto FileSystemObject, uno se usa para crear archivos y el otro se usa para abrir y leer y escribir archivos de texto. El método CreatExtFile obtiene el nombre de archivo que especificó y crea el archivo.
Establecer objTextStream = filesystemObject.CreateTextFile (nombre de archivo, [sobrescribir], [unicode])
El autor explicará los parámetros del método CreateTextFile a continuación
1. Nombre de archivo Una cadena que contiene el nombre de la ruta del archivo puede ser el nombre completo de la ruta del archivo, incluido el nombre de la unidad y el nombre del directorio, o puede ser solo un nombre de archivo. En el directorio raíz del sitio.
2. Sobrescribir la cantidad de boolean. El nombre será eliminado.
3. Parámetros opcionales unicode. Los valores booleanos indican si crear un archivo en formato de archivo unicode o ASCII. Este valor es verdadero si se crea un archivo en formato de archivo unicode, y falso si se crea un archivo en formato de archivo ASCII. Si se omite esta sección, se supone que se crea un archivo ASCII.
En el programa anterior, usamos SET SS = FS.CreateTextFile (Syslog, Forwriting, False) para crear un archivo y escribir un archivo cuando el archivo de registro no existe aquí, la escritura significa escribir un archivo.
A diferencia del método CreateTextFile, el método OpenTextFile se usa para obtener el nombre de archivo que especificó y abrir el archivo. para que pueda operar el archivo después de que se abra. La sintaxis del método OpenTextFile es la siguiente:
Establecer objTextStream = filesystemObject.opentextFile (nombre de archivo, [iomode], [create], [formato])
Los parámetros son los siguientes:
1. El nombre de archivo es la variable necesaria, igual que el nombre de archivo de CreateTextFile
2. Iomode opcional constante, con el valor como una de las siguientes dos constantes prevalecimientos o para la aplicación de IF.
3. Cree una cantidad booleana opcional, especificando qué operación se realiza si el archivo que desea abrir no existe. Si False, se generará un mensaje de error cuando no se encuentre el archivo.
4. Formato de valor opcional, puede seleccionar tres valores tristados para especificar el formato del archivo, respectivamente.
Después de abrir o crear un archivo de texto, obtiene un objeto TextStream, que tiene un cursor, al igual que un cursor en un programa de procesamiento de textos, que indica dónde aparecerá el personaje que se escrita, y también indica la ubicación del personaje que desea para leer. No puede crear un objeto TextStream a través de CreateObject.
Las propiedades y métodos del objeto TextStream se enumeran a continuación
Textstream.a
La cantidad booleana de solo lectura por cuenta, cuando el cursor está al final de la línea actual, su valor es verdadero, de lo contrario es falso
Textstream.atendofstream de solo lectura cantidad booleana, si el cursor está al final de la secuencia, su valor es verdadero, de lo contrario es falso
Textstream.column de solo lectura entera, contando el número de caracteres desde el comienzo de la línea hasta la posición actual del cursor
Textstream.line solo lectura entera que indica el número de línea de la línea en todo el archivo donde se encuentra el cursor
Textstream.close () cierra la secuencia y el archivo de texto correspondiente
TextStream.read (num) especifica que se leen un cierto número de caracteres desde el archivo de texto que comienza desde la posición actual del cursor.
Textstream.readall () lee la transmisión completa en una cadena
Textstream.readline () lee una línea completa de caracteres en una cadena
Textstream.write (texto) Escriba una cadena en la transmisión
Textstream.writeline () escribe una cadena de texto en la transmisión
Textstream.skip (num) En una secuencia, mueva la posición del cursor por un cierto número de longitudes de cadena
Textstream.skiplines () En una secuencia, mueva el cursor a un cierto número de filas
Textstream.Writeblank escribe un cierto número de líneas vacías para la transmisión
líneas (num)
Creo que todos pueden sentir las poderosas funciones del componente de acceso a los archivos ASP. Para el servidor remoto, lea el archivo a través del componente de acceso al archivo y genere automáticamente una nueva página HTML, sin tener que trabajar duro para actualizar los archivos HTML uno por uno. Si está interesado, puede usar el componente de acceso a archivos de ASP para escribir su propio generador HTML totalmente automático para disfrutar plenamente de la sensación avanzada y fácil de mantener el sitio web.