Perl: autenticazione Esempio di chiamata alla funzione di autenticazione La chiamata usa la funzione user_authentication passando - la userid e la password di accesso alle API: interface_code e interface_password
- la userid e la password di un utente Documatica: user@acme.it e user_pass
Il codice elabora anche la risposta, stampando il token ricevuto in caso di errore o i codici di errore in caso di errore. use v5.10; use strict; use warnings; use LWP::UserAgent; use HTTP::Request::Common; use JSON::XS qw(decode_json encode_json);
my $SERVER_URL =
'https://docubank.kpnqwest.it/backend/v1.0/public/script/'; my $INTERFACE_CODE = 'INTERFACE_code'; my $INTERFACE_PASSWORD = 'INTERFACE_pass'; my $USER_LOGIN = 'user@acme.it'; my $USER_PASSWORD = 'user_pass';
my $user_agent = LWP::UserAgent->new;
my $user_authentication_msg = { 'message_type' => 'USER_AUTHENTICATION', 'version' => '1.0', 'interface_code' => $INTERFACE_CODE, 'interface_password' => $INTERFACE_PASSWORD, 'login' => $USER_LOGIN, 'password' => $USER_PASSWORD };
my $response = $user_agent->request( POST $SERVER_URL, 'Content_Type' => 'application/json', 'Content' => encode_json($user_authentication_msg) );
my $parsed_response = decode_json( $response->decoded_content );
if ( $response->is_success ) { print "Token: $parsed_response->{'token'}\n"; } else { given ( $parsed_response->{'status'} ) { when ('BAD_INTERFACE_CODE_PASSWORD') { # ... } when ('USER_AUTHENTICATION_FAILURE') { # ... } when ('BACKEND_SERVER_ERROR') { # ... } default { die 'Should not arrive in here' } } } |