(Quick Reference)

Perl Code Samples

These examples all utilize the LWP::UserAgent module, which must be installed before running them.

GET

#!/usr/bin/perl -w
use strict;
use warnings;

# Create a user agent object use LWP::UserAgent; my $ua = LWP::UserAgent->new; $ua->agent("MyApp/0.1");

# Create a request my $req = HTTP::Request->new(GET => 'http://localhost:8080/mws/rest/images'); $req->content_type('application/json'); $req->authorization_basic("admin", "secret");

# Pass request to the user agent and get a response back my $res = $ua->request($req);

# Check the outcome of the response if ($res->is_success) { print $res->content; } else { print $res->status_line, "n"; }

POST

#!/usr/bin/perl -w
use strict;
use warnings;

# Create a user agent object use LWP::UserAgent; my $ua = LWP::UserAgent->new; $ua->agent("MyApp/0.1");

# Create a request my $req = HTTP::Request->new(POST => 'http://localhost:8080/mws/rest/images'); $req->content_type('application/json'); $req->authorization_basic("admin", "secret"); $req->content('{"profile":"compute","osVersion":"5","name":"centos5stateless","hypervisor":0,"architecture":"x86_64","osName":"centos","osType":"linux","type":"stateless"}');

# Pass request to the user agent and get a response back my $res = $ua->request($req);

# Check the outcome of the response if ($res->is_success) { print $res->content; } else { print $res->status_line, "n"; }

PUT

#!/usr/bin/perl -w
use strict;
use warnings;

# Create a user agent object use LWP::UserAgent; my $ua = LWP::UserAgent->new; $ua->agent("MyApp/0.1");

# Create a request my $req = HTTP::Request->new(PUT => 'http://localhost:8080/mws/rest/images/centos5-stateless'); $req->content_type('application/json'); $req->authorization_basic("admin", "secret"); $req->content('{"osVersion":"5.5"}');

# Pass request to the user agent and get a response back my $res = $ua->request($req);

# Check the outcome of the response if ($res->is_success) { print $res->content; } else { print $res->status_line, "n"; }

DELETE

#!/usr/bin/perl -w
use strict;
use warnings;

# Create a user agent object use LWP::UserAgent; my $ua = LWP::UserAgent->new; $ua->agent("MyApp/0.1");

# Create a request my $req = HTTP::Request->new(DELETE => 'http://localhost:8080/mws/rest/images/centos5-stateless'); $req->content_type('application/json'); $req->authorization_basic("admin", "secret");

# Pass request to the user agent and get a response back my $res = $ua->request($req);

# Check the outcome of the response if ($res->is_success) { print $res->content; } else { print $res->status_line, "n"; }