1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

работа с куками

Тема в разделе "С и С++", создана пользователем Satell, 8 июл 2007.

  1. Satell

    Satell Гость

    Репутация:
    0
    1. Как сделать, чтобы код на vc++ ниже, скачивающий страницу, добавлял в заголовок запроса такую куку из джава скрипта? т.е. чтобы сервер опряделял, что у меня есть поддержка кук и читал эту куку...
    и ещё есть ли в с++ библиотека на подобии как в perl LWP::UserAgentLWP cookie_jar, чтобы когда я запрашиваю страницу у меня определялось, что куки включены и также сохранялись там куки с запрашиваемой страницы.
    Если это нельзя сделать с помощью WinInet, то буду благодарен за код на сокетах
    2. как сделать чтобы тянуть не всю страницу, а только http заголовок?

    <script language="javascript" type="text/javascript">
    <!--
    document.cookie='roton=MnwwfDExODM4ODExMDR8MTE4Mzg4MTEwNHwwO2Jvb2ttYXJrfG5vcmVmX2lu; expires=Mon, 09 Jul 2007 07:51:44 GMT; path=/;';
    document.cookie='fav=1183881104; expires=Mon, 07 Jul 2008 07:51:44 GMT; path=/;';
    //-->
    </script>

    Код:
    #include "stdafx.h"
    
    #include <windows.h>
    #include <wininet.h>
    #pragma comment(lib,"wininet")
    
    #include <stdlib.h>
    #include <fstream.h>
    
    int main(int argc, char* argv[])
    {
    bool ok = false;
    
    
    HINTERNET hInternet =
    ::InternetOpen(
    TEXT("WinInet Test"),
    INTERNET_OPEN_TYPE_PRECONFIG,
    NULL,NULL,			
    0);
    
    if (hInternet != NULL) {
    HINTERNET hConnect = 
    ::InternetConnect(
    hInternet,
    TEXT("www.site.com"),
    INTERNET_DEFAULT_HTTP_PORT,
    NULL,NULL,
    INTERNET_SERVICE_HTTP,
    0,
    1u);
    
    if (hConnect != NULL) {
    HINTERNET hRequest = 
    ::HttpOpenRequest(
    hConnect,
    TEXT("GET"),
    TEXT("cgi-bin/infomy.cgi"),
    NULL,
    NULL,
    0,
    INTERNET_FLAG_KEEP_CONNECTION,
    1);
    
    if (hRequest != NULL) {
    BOOL bSend = ::HttpSendRequest(hRequest, NULL,0, NULL,0);
    if (bSend) {
    ofstream fnews("mp3.htm",ios::out|ios::binary);
    if (fnews.is_open()) for (;;) {
    char szData[1024];
    DWORD dwBytesRead;
    BOOL bRead = 
    ::InternetReadFile(
    hRequest,
    szData,sizeof(szData)-1,
    &dwBytesRead);
    
    if (bRead == FALSE || dwBytesRead == 0)
    break;
    
    szData[dwBytesRead] = 0;
    fnews << szData;
    
    ok = true;
    }
    }
    
    ::InternetCloseHandle(hRequest);
    }
    
    ::InternetCloseHandle(hConnect);
    }
    
    ::InternetCloseHandle(hInternet);
    }
    
    if (ok)
    system("start mp3.htm");
    
    return 0;
    }
     
  2. Satell

    Satell Гость

    Репутация:
    0
    roton=MnwwfDExODM4ODExMDR8MTE4Mzg4MTEwNHwwO2Jvb2ttYXJrfG5vcmVmX2lu; expires=Mon, 09 Jul 2007 07:51:44 GMT; path=/;
    fav=1183881104; expires=Mon, 07 Jul 2008 07:51:44 GMT; path=/;
    Как вытащить этот текст из страницы без регулярных выражений?

    document.cookie='текст1';
    document.cookie='текст2';
    текст1=roton=MnwwfDExODM4ODExMDR8MTE4Mzg4MTEwNHwwO2Jvb2ttYXJrfG5vcmVmX2lu; expires=Mon, 09 Jul 2007 07:51:44 GMT; path=/;
    текст2=fav=1183881104; expires=Mon, 07 Jul 2008 07:51:44 GMT; path=/;
     
Загрузка...

Поделиться этой страницей