• mv (21.07.08 13:11) [0]
    Добрый день!

    Вопрос такой: Как можно передать xml-сообщение с запросом серверу по HTTPS? Сообщение должно подписываться.
  • Медвежонок Пятачок © (21.07.08 13:39) [1]
    так же как и не xml сообщение
  • mv (21.07.08 13:47) [2]
    Можно примерчик, если не сложно?  Я так понимаю методом Post? Как подписать?
  • Anatoly Podgoretsky © (21.07.08 15:09) [3]
    > mv  (21.07.2008 13:47:02)  [2]

    Так как ударение на XML то надо понимать, что обычный стринг ты умее передавать.
  • mv (21.07.08 16:45) [4]
    Мне наверно нужно передавать запрос в XMLDoc? Типа XMLDoc.XML.Text. Делаю первый раз. С чего начать совершенно не знаю
  • mv (21.07.08 16:58) [5]
    с помощью каких компонентов можно достучаться к серверу? IdHTTP я так понимаю не поддерживает протокол CryptoPro
  • Медвежонок Пятачок © (21.07.08 17:44) [6]
    у криптопро нет никакого протокола
  • Медвежонок Пятачок © (21.07.08 17:49) [7]
    xml документом создаешь боди запроса.
    криптопрой (точнее через криптоапи 2.0) ставишь ЭЦП на контенте.
    далее idHTTP + OpenSSL или wininet засылаешь сам запрос с эцп на сервер.

    примеров не проси, это на пример не тянет а на статью в журнале мурзилка про вашего мальчика.
  • Palladin © (23.07.08 07:25) [8]

    > mv   (21.07.08 16:58) [5]

    выкинь idhttp если собираешься работать с https, пользуй wininet
  • laao (23.07.08 14:29) [9]

    > выкинь idhttp если собираешься работать с https, пользуй
    > wininet


    аргументируйте, плз
  • Anatoly Podgoretsky © (23.07.08 14:45) [10]
    > laao  (23.07.2008 14:29:09)  [9]

    У тебя есть серьезные замечания к Internet Explorer?
  • пост (23.07.08 14:49) [11]
    а как пост сделать через вининет?
  • Palladin © (23.07.08 15:09) [12]

    > laao   (23.07.08 14:29) [9]

    idhttp работает через openssl, openssl не имеет доступа к системному хранилищу сертификатов, их придется все время экспортировать в формат crt, если сертификат к тому же еще и содержит закрытый ключ и хранится в формате pfx с паролем, openssl вообще с ним не отработает


    > пост   (23.07.08 14:49) [11]

    немешало бы почитать справку по HttpOpenRequest
  • пост (23.07.08 16:15) [13]
    все прочитано.

    hSession := InternetOpen('блаблабла',INTERNET_OPEN_TYPE_PRECONFIG,nil,nil,0);

    Conn := InternetConnect(hSession,'localhost',80,nil,nil,INTERNET_SERVICE_HTTP,0,0);

    Req      := HttpOpenRequest(Conn,nil,'/blablabla',nil,'referer',nil,0,0);

    первые два вызова ок.
    у третьего код ошибки 122.
    Какого буфера ему не хватает -- не понятно
  • Palladin © (23.07.08 16:22) [14]
    ну че врешь то? нагло... прочитано... да если бы было прочитано вторым параметром Nil бы не стояло...
  • Palladin © (23.07.08 16:24) [15]
    и почему шестой параметр Nil ? он за accept отвечает... читатель...

    http://www.msdn.com/
  • пост (23.07.08 16:41) [16]
    Да был там у меня и явный пост 'POST' один фик.
  • Palladin © (23.07.08 16:53) [17]
    1. post верни, иначе это не post, а get
    2.  
    Var
     s:String;

    SetLength(s,10*1024);
    SetLength(Result,FormatMessage(
     FORMAT_MESSAGE_FROM_SYSTEM,
     Nil,
     GetLastError,
     0,
     @s[1],
     10*1024,
     Nil
    ));
    ShowMessage(s);



    чего пишет?
  • пост (23.07.08 16:59) [18]
    "область данных переданная по системному вызовы слишком мала".
    то есть 122 и есть
  • Palladin © (23.07.08 17:10) [19]
    интересно... а если через IE post запрос провести через форму - отрабатывает?
Есть новые Нет новых   [134433   +22][b:0][p:0.001]