powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Сохранить содержание ASP страницы в файл
8 сообщений из 8, страница 1 из 1
Сохранить содержание ASP страницы в файл
    #39144279
Фотография valex13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, как мне на сервере сохранить содержание страницы ASP в html файл. Аналог того, как это делают браузеры.
Язык программирования C#, VB.net (без разницы).
...
Рейтинг: 0 / 0
Сохранить содержание ASP страницы в файл
    #39144324
Фотография valex13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Написал примерно следующее. Но проблема в том, что IIS требует авторизации и в итоге сохраняется страница авторизации.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
                Dim strUri As String = Page.ResolveUrl("~/BAdmin/Print_Account.aspx?Number=" + objRow("Number").ToString.Trim)
                strUri = (New Uri(Request.Url, strUri)).AbsoluteUri

                Dim objRequest As HttpWebRequest = WebRequest.Create(strUri)
                Dim objResponse As HttpWebResponse = objRequest.GetResponse()

                Dim objReader As StreamReader = New StreamReader(objResponse.GetResponseStream())
                Dim strHtmlCode As String = objReader.ReadToEnd()

                File.WriteAllText(strFileName + ".html", strHtmlCode)
...
Рейтинг: 0 / 0
Сохранить содержание ASP страницы в файл
    #39144344
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Сохранить содержание ASP страницы в файл
    #39144358
Фотография valex13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Использую FormsAuthentication.
Не могу понять, где мне взять ICredentials?

CredentialCache.DefaultCredentials - у меня пустой.
...
Рейтинг: 0 / 0
Сохранить содержание ASP страницы в файл
    #39144402
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
valex13,
Что вводится на странице авторизации? Как она вообще построена?
...
Рейтинг: 0 / 0
Сохранить содержание ASP страницы в файл
    #39144415
Фотография valex13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обычная страница с логин и паролем.
При нажатии на кнопку "Логин" вызываем :
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
    Private Sub CheckUserRight()
        ErrorMessage("")

        Page.Validate()
        If (Not Page.IsValid) Then Return

        If Barnet.BarnetUsers.Authenticate(strUserName.Text, strPassword.Text) Then
            FormsAuthentication.SetAuthCookie(strUserName.Text.Trim, True)


            Dim objTicket As FormsAuthenticationTicket
            Dim strCokies As String = ""

            objTicket = New FormsAuthenticationTicket(1, strUserName.Text.Trim, DateTime.Now, DateTime.Now.AddMinutes(40), False, "Barnet Portal Custom Data")
            Dim objCookie As HttpCookie
            strCokies = FormsAuthentication.Encrypt(objTicket)
            objCookie = New HttpCookie(FormsAuthentication.FormsCookieName, strCokies)

            If (chkPersistCookie.Checked) Then
                objCookie.Expires = objTicket.Expiration
                objCookie.Path = FormsAuthentication.FormsCookiePath
                Response.Cookies.Add(objCookie)
            End If

            Dim strRedirect As String = Request("ReturnUrl")
            If (strRedirect Is Nothing) Then
                ' Авторизация из главной страницы
                Dim strDefaultRedirectUrl As String = ""
                If (Barnet.BarnetUsers.IsInRole(strUserName.Text.Trim, "manager")) Then
                    strDefaultRedirectUrl = "~/BAdmin/Default.aspx"
                End If

                If (Barnet.BarnetUsers.IsInRole(strUserName.Text.Trim, "client")) Then
                    strDefaultRedirectUrl = "~/BPortal/Default.aspx"
                End If


                If (strDefaultRedirectUrl.Trim = "") Then
                    ErrorMessage("Для Вас доступ к системе персонально закрыт!. Обратитесь к администратору системы.")
                    Return
                End If

                Response.Redirect(strDefaultRedirectUrl.Trim, True)
            Else
                Response.Redirect(strRedirect, True)
            End If

        Else
            ErrorMessage("Указанный пользователь не обнаружен в системе или не правильно указан пароль!")
        End If
    End Sub



Barnet.BarnetUsers.Authenticate - Это собственный метод, возвращает true или false
В Web.Config
Код: xml
1.
2.
3.
4.
5.
6.
<!--Тип авторизации в системе-->
    <authentication mode="Forms">
      <forms name=".ASPXFORMSAUTH" loginUrl="~/Logon.aspx" protection="All" timeout="10" path="/" slidingExpiration="true" cookieless="AutoDetect" defaultUrl="~/index.html"></forms>
    </authentication>
    <roleManager enabled="true" cacheRolesInCookie="true" cookieProtection="All" />
    
...
Рейтинг: 0 / 0
Сохранить содержание ASP страницы в файл
    #39145063
Фотография valex13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для потомков )
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
                Dim strLocalUri As String = Page.ResolveUrl(strAccountUrl)
                Dim strUri As String = (New Uri(Request.Url, strLocalUri)).AbsoluteUri

                Dim objRequest As HttpWebRequest = WebRequest.Create(strUri)
                objRequest.Method = "POST"
                objRequest.AllowWriteStreamBuffering = True

                objRequest.CookieContainer = New CookieContainer()
                Dim objCookie As HttpCookie = Request.Cookies(FormsAuthentication.FormsCookieName)
                objRequest.CookieContainer.Add(New Cookie(objCookie.Name, objCookie.Value, objCookie.Path, "localhost"))

                Dim objResponse As HttpWebResponse = objRequest.GetResponse()
                Dim objReader As StreamReader = New StreamReader(objResponse.GetResponseStream(), True)
                Dim strHtmlCode As String = objReader.ReadToEnd()



                File.WriteAllText(strFileName + ".html", strHtmlCode, Encoding.UTF8)
                objReader.Close()
...
Рейтинг: 0 / 0
Сохранить содержание ASP страницы в файл
    #39145260
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
valex13,
Слабовато! Помни о IDisposable!
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Сохранить содержание ASP страницы в файл
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]