Это, кажется, единственный применимый тест в манифесте, и он не кажется слишком полезным
http://cpansearch.perl.org/src/TOKUHIROM/Net-OpenID-Consumer-Lite-0.02/xt/001_mixi.t Apache2::AuthMixi
также использует его немного
Этот модуль просто делегирует LWP::UserAgent
. Мне не нравится, он должен подкласс LWP :: UserAgent вместо делегирования. Вы можете найти документы для LWP::UserAgent
на cpan и получить доступ к базовой копии с помощью скрытого метода _ua
(хотя, как правило, предшествующее подчеркивание говорит вам, что оно не поддерживается и предполагается, что оно хранится в секрете)
my $csr = Net::OpenID::Consumer::Lite->new();
$csr->_ua->post(); # same as LWP::UserAgent::post()
Кажется, что вы должны использовать только handle_server_response()
, который вызывает _check_authentication()
, который вызывает _get()
, который делегирует ->_ua->get()
.
check_authentication () хочет таблицу переходов HashRef с 5 событиями для not_openid
, setup_required
, cancelled
, verified
и error
. Кроме того, я считаю, что он хочет связку ключевых (openid.
) префиксов и значений.
Согласно коду, для отправки запроса $request->{'openid.mode'}
должен существовать в $request
и быть установленным (предпочтительно) check_authentication
, а не «отменять». Ключ openid.user_setup_url
логически не должен быть установлен, иначе он просто вызовет соответствующий обратный вызов. Он также должен иметь набор ключей op_endpoint.endpoint
, куда и направляется запрос.
Этот код не сложен для чтения, Я бы предложил посмотреть Автор также, похоже, имеет несколько модулей , что является хорошим знаком. Мне не нравятся таблицы переходов с такими данными, это кажется странным с точки зрения пользовательского интерфейса.