jdasari has asked for the wisdom of the Perl Monks concerning the following question:

Fairly new to Perl and looking for pointers and help in setting the HTTP header to accept Oauth2 authorization. The service provider has provided an access token that I am hoping to embed into a query. Using the code below I get a ["errors:[{"type":"oauth","message":Invalid Oauth 2 Request}]} Thanks in advance for your help.

#!/usr/bin/perl use strict; use warnings; use diagnostics; use HTTP::Headers; use HTTP::Request; use HTTP::Response; use HTTP::Headers; use LWP::UserAgent; use JSON; use LWP::Authen::Oauth2; use Net::OAuth2::Profile::Password; my $base_url = 'https://api.mavenlink.com/api/v1/workspaces.json'; #we +b site my $app_id = "5axxxxxxxxxxxxxx"; # Application ID my $secret_tkn = "aefdxxxxxxxxxxxxxx";#secret token my $acc_tkn = "b77cxxxxxxxxxxxxxxx"; # access token my $header = HTTP::Headers->new ('Authorization' => 'Bearer b77cxxxxx +xxxxxxxxxxxxxxx'); my $request = HTTP::Request->new("GET",$base_url,$header); my $ua = LWP::UserAgent->new; my $response = $ua->request($request); print $response->content;

Replies are listed 'Best First'.
Re: Setting HTTP Header for Oauth2 Authentication
by Anonymous Monk on Apr 22, 2014 at 10:36 UTC

    You seem to have found some modules for your task, but don't seem to be using those modules in your code. Take a look at the LWP::Authen::Oauth2 documentation, and use the methods described there in your code.

        Thanks AM. Will check out the links. Tried to use the LWP::Authen::Oauth2 module but did not get very far with decrypting the documentation with my 3 day old knowledge of Perl. Seemed a little skeletal for newbie :) Hence my attempt to set the header and request directly.