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

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

  1. Satell

    Satell Гость

    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>

    Код (Text):
    #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 Гость

    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=/;
     
Загрузка...
Похожие Темы - работа куками
  1. Andrey Kha
    Ответов:
    0
    Просмотров:
    29
  2. Hoasker
    Ответов:
    0
    Просмотров:
    64
  3. garri671
    Ответов:
    0
    Просмотров:
    55
  4. lelik200969
    Ответов:
    0
    Просмотров:
    53
  5. Kozolick
    Ответов:
    0
    Просмотров:
    142

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