Получить ответ сервера...

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Trinux
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 25.11.2003 (Вт) 14:38

Получить ответ сервера...

Сообщение Trinux » 25.11.2003 (Вт) 14:52

Привет всем! Обращаюсь к вам, т.к. уже больше неккому... Мне нужно послать запрос серверу и получить ответ сервера на запрос. Т.е. послать запрос в виде
http://bbs.vbstreets.ru/posting.php?mode=newtopic&f=1
и получить ответ. Допустим я посылаю запрос на несуществующую страницу, например
http://bbs.vbstreets.ru/posting.php?mode=NonPage
и должен получить ответ 404. Короче это сложно для понимания =) но мне нужен ответ сервера, 404 или 403 или 500, короче код ошибки при неверном адресе и код страницы при верном...
Поможет это или нет, но тому, чей код будет работать дам 10 7-ми значных УИНов... :wink:

skiperski
Идеолог
Идеолог
Аватара пользователя
 
Сообщения: 1386
Зарегистрирован: 25.06.2002 (Вт) 15:52

Сообщение skiperski » 25.11.2003 (Вт) 16:16

На форму TextBox и Microsoft Internet Transfer Control.
Анализируй возвращаемое значение Inet1.GetHeader
Код: Выделить всё
Option Explicit

Private Sub Command1_Click()
    Inet1.Execute Text1.Text
End Sub

Private Sub Form_Load()
    Text1.Text = "http://www.yandex.ru"
End Sub

Private Sub Inet1_StateChanged(ByVal State As Integer)
    If (State = icResponseCompleted) Then
        Debug.Print Inet1.GetHeader
    End If
End Sub

Trinux
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 25.11.2003 (Вт) 14:38

Сообщение Trinux » 26.11.2003 (Ср) 2:53

УРА!!!!! РАБОТАЕТ!!!!!! Спасибо друг, везде просил, все молчали, а вы помогли... Че с УИНами, по почте может тебе их выслать? Могу и в АСЕ отдать... И еще мелкий вопр... Как мне если страница существует, получить ее исходник... Ладно. СПАСИБО!!!!

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 26.11.2003 (Ср) 4:07

А здесь ещё проще - добавь ещё текстбокс txtSource и строчку:
txtSource = Inet1.OpenURL(Text1.Text, icString)
Do While Inet1.Busy = True
DoEvents
Loop
MsgBox ("Скачал весь код!")

Trinux
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 25.11.2003 (Вт) 14:38

Сообщение Trinux » 26.11.2003 (Ср) 6:24

Amed писал(а):А здесь ещё проще - добавь ещё текстбокс txtSource и строчку:
txtSource = Inet1.OpenURL(Text1.Text, icString)
Do While Inet1.Busy = True
DoEvents
Loop
MsgBox ("Скачал весь код!")

Вообще не понял, что нужно сдлать.... Поконкретнее можно?

skiperski
Идеолог
Идеолог
Аватара пользователя
 
Сообщения: 1386
Зарегистрирован: 25.06.2002 (Вт) 15:52

Сообщение skiperski » 26.11.2003 (Ср) 13:01

Можно доделать предыдущий код для соблюдения единообразия
Код: Выделить всё
Option Explicit

Private Sub Command1_Click()
    If (Not Inet1.StillExecuting) Then Inet1.Execute Text1.Text
End Sub

Private Sub Form_Load()
    Text1.Text = "http://www.yandex.ru"
End Sub

Private Sub Inet1_StateChanged(ByVal State As Integer)
    If (State = icResponseCompleted) Then
        Debug.Print Inet1.GetHeader
        Text2.Text = GetSourceCode()
    End If
End Sub

Private Function GetSourceCode() As String
   
    Const ShunkSize As Long = 1024 'KB установить по желанию
   
    Dim s As String
    Dim ss As String
   
    Do
        s = Inet1.GetChunk(ShunkSize)
        ss = ss & s
        If (Len(s) < ShunkSize) Then Exit Do
    Loop
   
    'переводим переносы строк в формат Windows
    ss = Replace(ss, vbCrLf, vbLf)
    ss = Replace(ss, vbCr, vbLf)
    ss = Replace(ss, vbLf, vbNewLine)
   
    GetSourceCode = ss
   
End Function


или как предлагал Amed
Код: Выделить всё
Private Sub Command2_Click()
    If (Not Inet1.StillExecuting) Then
        Text2.Text = Inet1.OpenURL(Text1.Text)
    End If
End Sub


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, PetalBot и гости: 7

    TopList