powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Авторизация на Mail.ru
5 сообщений из 5, страница 1 из 1
Авторизация на Mail.ru
    #38151438
NikVik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как авторизироваться на mail.ru из объекта MSXML2.XMLHTTP?
Спасибо
...
Рейтинг: 0 / 0
Авторизация на Mail.ru
    #38152328
NikVik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это невозможно или не интересно?
Конечно, mail.ru взят для примера. На самом деле нужно скачать прайс с b2b (просто не могу дать пароли), но скачка по MSXML2.XMLHTTP не получается из-за отсутсвия авторизации. Через InternetExplorer.Application авторизация проходит, а объект MSXML2.XMLHTTP не могу авторизовать.
Посмотрел, что посылается на сайт при авторизации.
Пытаюсь сделать так (тестовый логин - test3597 (домен mail.ru), пароль - sdfg12):

Код: 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.
Public Sub TestMailRu()
Set XMLHTTP = CreateObject("MSXML2.XMLHTTP")
    XMLHTTP.Open "POST", "http://win.mail.ru/cgi-bin/auth", True
    XMLHTTP.setRequestHeader "Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
    XMLHTTP.setRequestHeader "Accept-Charset", "windows-1251,utf-8;q=0.7,*;q=0.7"
    XMLHTTP.setRequestHeader "Accept-Encoding", "gzip, deflateAccept-Language:ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3"
    XMLHTTP.setRequestHeader "Host", "win.mail.ru"
    XMLHTTP.setRequestHeader "Proxy-Authorization", "Basic TGV2aW46d1RSX2wzNDU="
    XMLHTTP.setRequestHeader "Proxy-Connection", "keep-alive"
    XMLHTTP.setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 5.1; rv:6.0.2) Gecko/20100101 Firefox/6.0.2"
    
    XMLHTTP.setRequestHeader "Cookie", "any non-empty string here"
coo1 = "Mpop=1358089814:60647d6c5e63695f19050219081d03041c0d074f6a5d5e465e00050902031e0b05741e4d5c4b4503040e021658505d5b174345:test3597@mail.ru:"
coo2 = "VID=2aq3Eh1K3un4"
coo3 = "B=hT0MAFAsyQQA+HJhgI4LBd9ZGMSkliA2CYYAAEDEqR1h5h8IsV9HyLo6QtDYETawjuCv0QxxfqWOAAAA"
coo4 = "C=uOwcUQAAAESCAAATAQAA3gAAAQAA"
coo5 = "I=AQBWxxxRAgATAAgBAF0ABQIBAA"
coo6 = "mc1=1361434055"
coo7 = "mrcu=CD204F02C99D77E1D6DAFA01060A"
coo8 = "p=NnoAABP7hQAA"
coo9 = "s="
coo10 = "t=obLD1AAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAACAAAEBdgcA"
cookies = coo1 & "; " & coo2 & "; " & coo3 & "; " & coo4 & "; " & coo5 & "; " & coo6 & "; " & coo7 & "; " & coo8 & "; " & coo9 & "; " & coo10

    XMLHTTP.setRequestHeader "Cookie", cookies
     XMLHTTP.Send 
    Do While XMLHTTP.readyState <> 4
         DoEvents
    Loop
    
s = XMLHTTP.responseBody
MsgBox s
Set XMLHTTP = Nothing
End Sub



возвращает пустоту ... что я делаю не так???
...
Рейтинг: 0 / 0
Авторизация на Mail.ru
    #38152516
KVVK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NikVik, есть хороший пример про Яндекс
http://www.rsdn.ru/article/inet/httpweb.xml
...
Рейтинг: 0 / 0
Авторизация на Mail.ru
    #38152578
скукотища
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NikVik,
запрос в "нетуда", логин-пароль не передаёте.
Код: 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.
    Const URL_AUTH$ = "https://auth.mail.ru/cgi-bin/auth"
    Const S_LOGIN$ = "test3597", S_PASS$ = "sdfg12", S_DOMAIN$ = "mail.ru"
    
    Dim XMLHTTP, param
    Dim cookies$
    Dim s$

    Set XMLHTTP = CreateObject("MSXML2.XMLHTTP")
    With XMLHTTP
        .Open "POST", URL_AUTH, 0
        .setRequestHeader "Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
        .setRequestHeader "Accept-Charset", "windows-1251,utf-8;q=0.7,*;q=0.7"
        .setRequestHeader "Accept-Encoding", "gzip, deflate;Accept-Language:ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3"
        
        cookies = "loginS=0"
        .setRequestHeader "Cookie", cookies
        
        param = "Login=" & S_LOGIN & "&Password=" & S_PASS & "&Domain=" & S_DOMAIN & ""
        
        .send param
        If .Status = 200 Then
            's = .responseBody
            s = .responsetext
            'cookies = .getresponseheader("Set-Cookie")
            cookies = .getallresponseheaders
        Else: s = "*Ie?aeuea": cookies = ""
        End If
    End With
    Set XMLHTTP = Nothing

    MsgBox s, , "RESPONSE"
    'MsgBox cookies, , "COOKIES"
    MsgBox cookies, , "RESPONSE_HEADERS"
    

...
Рейтинг: 0 / 0
Авторизация на Mail.ru
    #38153143
NikVik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное спасибо!
скукотища - за код, KVVK - за ссылку, не встречал раньше, читаю.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Авторизация на Mail.ru
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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