The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

OAuth::Simple - Simple OAuth authorization on your site

SYNOPSIS

  my $oauth = OAuth::Simple->new(
      app_id     => 'YOUR APP ID',
      secret     => 'YOUR APP SECRET',
      postback   => 'POSTBACK URL',
  );
  my $url = $oauth->authorize( {url => 'https://www.facebook.com/dialog/oauth', scope => 'email', response_type => 'code'} );
  # Your web app redirect method.
  $self->redirect($url);
  # Get access_token.
  # Facebook returns data not in JSON. Use the raw mode and parse.
  my $access = $oauth->request_access_token( {url => 'https://graph.facebook.com/oauth/access_token', code => $args->{code}, raw => 1} );
  # Get user profile data.
  my $profile_data = $oauth->request_data( {url => 'https://graph.facebook.com/me', access_token => $access} );  

DESCRIPTION

Use this module for input VK OAuth authorization on your site

METHODS

new

  my $oauth = OAuth::Simple->new(
      app_id     => 'YOUR APP ID',
      secret     => 'YOUR APP SECRET',
      postback   => 'POSTBACK URL',
  );

The new constructor lets you create a new OAuth::Simple object.

authorize

        my $url = $oauth->authorize( {url => $authorize_server_url, option => 'value'} );
        # Your web app redirect method.
        $self->redirect($url);

This method returns a URL, for which you want to redirect the user.

Options

See information about options on your OAuth server.

Response

Method returns URI object.

request_access_token

  my $access = $oauth->request_access_token( {url => $server_url, code => $args->{code}} );

This method gets access token from OAuth server.

Options

* code - returned in redirected get request from authorize API method; * raw - do not decode JSON, return raw data; * http_method - set http method: GET(default), POST, etc.

Response

Method returns HASH object.

request_data

  my $profile_data = $oauth->request(
      url          => $api_method_url,
      access_token => $access_token,
      raw          => 1,
      http_method  => 'POST',
      }
  );

This method sends requests to OAuth server.

Options

* url (required) - api method url; * params (not required) - other custom params on OAuth server; * access_token (required) - access token; * raw - do not decode JSON, return raw data (default 0); * http_method - set http method: GET(default), POST, etc.

Response

Method returns HASH object with requested data.

prepare_http_request

Returns HTTP::Request object.

SUPPORT

Github: https://github.com/Foxcool/OAuth-Simple

Bugs & Issues: https://github.com/Foxcool/OAuth-Simple/issues

AUTHOR

Copyright 2012 Alexander Babenko.