Использование сертификата PFX для подключения к сайту HTTP - PullRequest
0 голосов
/ 05 февраля 2010

Вот сценарий: мне нужно подключиться к веб-сайту для получения результатов электронных лабораторных работ в формате XML. Для подключения мне нужно использовать цифровой сертификат.

Мне удалось получить версию этой работы в Perl. Это выглядит так:

#!/usr/bin/env perl

use strict;
use WWW::Mechanize;
$|++;

my $username = 'xxx';
my $password = 'yyy';

$ENV{HTTPS_PKCS12_FILE}     = 'CERTFILE.pfx';
$ENV{HTTPS_PKCS12_PASSWORD} = 'PathCert';

my $mech = WWW::Mechanize->new();
$mech->agent_alias('Windows IE 6');

$mech->get("https://www.example.org/xyz/,DanaInfo=999.33.1.10+");
$mech->get("https://www.example.org/xyz/isapi_pathnet.dll?Page=Login&Mode=Silent&UserID=xxx&Password=yyy,DanaInfo=999.33.1.10");
$mech->get("https://www.example.org/xyz/isapi_pathnet.dll?Page=HL7&Query=NewRequests,DanaInfo=999.33.1.10");

print $mech->content();

Теперь это работает, когда я запускаю его со своей рабочей станции. Однако:

  • Если я скомпилирую его с помощью perl2exe, он не будет работать.
  • Если я пытаюсь скомпилировать его с помощью pp (например, «pp -r sslclient.pl»), все, что я получаю, это «500 согласование SSL не удалось»:
  • Если я скопирую весь этот каталог на другой компьютер, скрипт просто зависнет при первом операторе $ mech-> get ().
  • Что я действительно хочу, так это найти эквивалент этого в Python (остальная часть моего приложения - Python), но пока не повезло.

Итак, здесь много проблем. У кого-нибудь есть идеи?

1 Ответ

0 голосов
/ 05 февраля 2010

Понятия не имею, что происходит с вашими проблемами с Perl. Тем не менее, механизм для Python можно найти здесь

...