AASP - это приложение, разработанное Microsoft для замены программ сценариев CGI. Он может взаимодействовать с базами данных и другими программами. Здесь редактор даст ему несколько простых дискуссий. В следующем контенте в основном рассказывается о основных принципах кода письма ASP.
1. Объявит переменные VBScript
В ASP VBScript обеспечивается сильной поддержкой и может легко интегрировать функции и методы VBScript, что обеспечивает большое удобство для расширения существующих функций ASP. Поскольку концепция типов переменных была размыта в ASP, многие программисты привыкли не объявлять переменные VBScript во время взаимодействия между ASP и VBScript, что увеличивает бремя отображения сервера и, таким образом, влияет на скорость запроса ответа сервера.
Ввиду этого мы можем заставить пользователя выполнять объявления переменных в VBScript так же, как мы заставляем пользователя выполнять объявления переменных в VB. Метод реализации состоит в том, чтобы разместить вариант <% explicit%> в начале линии программы ASP.
2. кодировать адрес URL -адреса
Когда мы используем ASP для динамического генерирования адреса URL -адреса с параметрами и прыжком, он нормально разбираться в IE, но при просмотре NetScrape возникают ошибки следующим образом:
Http error 400 400 Плохой запрос. Из -за неэффективного синтаксиса запрос не может быть понят сервером. Клиент не должен повторять запрос без модификаций.
Решение состоит в том, чтобы использовать метод встроенного объекта ASP Urlencode для URL-адреса, кодирующего сгенерированные параметры URL. Пример заключается в следующем:
<% Url = "xur.asp" var1 = "username =" & server.urlencode ("xur") var2 = "& company =" & server.urlencode ("xurstudio") var3 = "& phone =" & server.urlencode ("021-53854336-186") response.redirect url & "?"? " & var1 & var2 & var3 %>3. Очистить объект
После использования объекта сначала используйте метод закрытия, чтобы освободить системные ресурсы, занятые объектом; Затем установите значение объекта на «ничего», чтобы освободить память объекта. В то время я разбил свой IIS, создав более 100 Recordsets на странице без четких объектов. В следующем коде используется контент базы данных для создания раскрывающегося списка. Пример кода заключается в следующем:
<% mydsn = "dsn = xur; uid = xur; pwd = xur" mysql = "select * из авторов, где au_id <100" set conntemp = server. response.write mysql conntemp.close Установите conntemp = ничего ответа.
4. Создать запрос SQL с использованием строк
Использование строк для установления запросов не ускоряет скорость анализа сервера. Напротив, это также увеличит время разбора сервера. Но все еще рекомендуется использовать строки вместо простых операторов запроса для запроса. Преимущество этого заключается в том, что он может быстро обнаружить проблему программы, тем самым облегчая и эффективно генерировать программу. Примеры следующие:
< %mysql = "" select * "mysql = mysql &" из издателей "mysql = mysql &" where state = 'ny' "response.write mysql set rstemp = conntemp.execute (mysql) rstemp.close set rstemp = ничего %>
5. Используйте вариант, чтобы выбрать условие
При выборе условного выбора попробуйте использовать операторы вариантов и избежать использования операторов IF. Использование операторов корпуса может сделать программу проходить и выполнять быстрее, чем операторы IF. Примеры следующие:
<%FOR i = 1 TO 1000 n = i Response.Write AddSuffix(n) & "<br>" NEXT %> <% Function AddSuffix(num) numpart = RIGHT(num,1) Select CASE numpart CASE "1" IF InStr(num,"11") THEN num = num & "th" ELSE num = num & "st" END IF CASE "2" IF InStr(num,"12") THEN num = num & "th" ELSE num = num & "nd" End Case "3" Если instr (num, "13"), то Num = num & "th" else num = num & "rd" end, если случай "4" num = num & "th" case else num = num & "th" end select addSuffix = num end function %>
6. Используйте константы, определенные в файле adovbs.inc, чтобы открыть набор записей
При открытии набора записей вы можете определить тип курсора и тип блокировки, которые открывает набор записей.
В файле Adovbs.inc определены некоторые константы, чтобы определить эти типы. Файл adovbs.inc сохраняется в каталоге/inetpub/iissamples/iisamples. Ниже приведены несколько часто используемых типов курсоров и типов блокировки.
Тип курсора:
Тип блокировки:
<!-#include virtual = "/adovbs.inc"-> <% connectme = "dsn = xur; uid = xur; pwd = xur" sqltemp = "select * из издателей, где name = 'xur' set rstemp = server.createobject (" adodb.recordset ") rstemp.openstempstemptimetmest response.write rstemp.recordcount & "Записи в <br>" & sqltemp rstemp.close set rstemp = ничего %>7. Избегайте определения объекта в файле Global.ASA
Поскольку на содержимое в файле Global.ASA можно ссылаться все файлы на сайте, несомненно, определение объектов в файле Global.ASA может сохранить много дублирования.
Например, в функции Application_onstart в Global.asa сделано следующее определение:
< %Sub application_onstart set application ("theconn") = server.createObject ("adodb.connection") end sub %>;Это позволяет вам делать аналогичные ссылки в любом коде на сайте:
< % mysql = "select * из издателей, где state = 'xur' set rStemp = application (" theconn "). выполнить (mysql) %>Аналогичным образом, объект Set Record может быть создан в функции session_onstart
< %Sub session_onstart set session ("rstemp") = server.createObject ("adodb.recordset") end sub %>Затем на сайте сделаны следующие цитаты:
< % mysql = "select * из издателей, где State = 'xur' set session (" rstemp ") = conntemp.execute (mysql) %>Тем не менее, это также оказывает большое негативное влияние. Поскольку переменные приложения и сеанса только выпускают занятые ресурсы при закрытии веб -сайта, параметры сеанса будут тратить много ненужной памяти, и в настоящее время переменная приложения становится узкой полостью в производительности сервера.
Решение:
Создайте страницу ASP, чтобы определить объекты, и введите эту страницу ASP на странице, на которой необходимо вызвать эти объекты. Предполагая, что имя страницы ASP определенного объекта.
<!-#Включите virtual = "/define.asp"->
При введении страниц лучше всего не включать <%@ranguage = "vbscript"%> в файле ASP, который будет представлен. Потому что в файле ASP может быть только один язык анализа сценария, определяемый @.
8. Безопасность
ASP предоставляет хороший механизм защиты кода, и весь код ASP выполняется на стороне сервера и возвращает только результат выполнения клиентского кода. Несмотря на это, в старой версии IIS вы можете просмотреть исходный код ASP после данных :: $ Data, которые уже попадают в объем безопасности веб -сервера и не находятся в рамках этой статьи. Ниже приведены две простые меры предосторожности.
Хотя рекомендуется ввести файлы с Inc ASP в качестве расширения, все еще рекомендуется использовать ASP в качестве расширения для введения файлов здесь. Когда эти коды работают на веб -сервере с плохим механизмом безопасности, вы можете просмотреть содержимое импортированного файла, просто введя адресную строку (Inc - это расширение). Это связано с тем, что на веб -сервере, если библиотека динамических соединений, которая разрешает определенный тип (например, Inc), не определена, файл отображается в исходном коде.
Не помещайте файл базы данных в структуру веб -сайта, чтобы, когда злоумышленник получает путь к базе данных, он может легко получить базу данных, а затем произвольно изменять контент базы данных. Лучшим подходом является создание DSN (имя источника даты) для базы данных и непосредственно получить доступ к DSN при доступе к базе данных.
Через эту статью есть какое -либо понимание кодирования ASP? Надеюсь, это может вам помочь.