perl - HTTP::Tiny 로 http POST request 날리기. json 데이터 사용
perl - HTTP::Tiny 로 http GET request 날리기
GET 요청 날리기 GET 요청 날리기 - parameter 추가 GET 요청 날리기 - header 추가 POST 요청은 다음에... 참고 HTTP::Tiny http://search.cpan.org/~dagolden/HTTP-Tiny-0.056/lib/HTTP/Tiny.pm
junho85.pe.kr
의 후속 편. POST request 날리기입니다.
POST 요청 날리기 with json
#!/usr/bin/perl
use strict;
use warnings FATAL => 'all';
use Data::Dumper;
use HTTP::Tiny;
use JSON;
my $http = HTTP::Tiny->new();
my %headers = ();
my %data = (
name => "junho85",
address => "korea"
);
my $url = "http://httpbin.org/post";
my $response = $http->post($url, {
headers => \%headers,
content => encode_json(\%data)
});
print $response->{content};
%data의 내용을 json으로 변경해서 body에 넣어서 POST 요청을 보냈습니다.
응답 결과는 다음과 같습니다. httpbin으로 요청을 보내면 요청 내용을 정리해서 응답으로 다시 보내줍니다.
{
"args": {},
"data": "{\"name\":\"junho85\",\"address\":\"korea\"}",
"files": {},
"form": {},
"headers": {
"Content-Length": "36",
"Content-Type": "application/octet-stream",
"Host": "httpbin.org",
"User-Agent": "HTTP-Tiny/0.076",
"X-Amzn-Trace-Id": "Root=1-608c17e4-2384607a4f3edb2e6f6a2ec5"
},
"json": {
"address": "korea",
"name": "junho85"
},
"origin": "220.78.85.67",
"url": "http://httpbin.org/post"
}
data에 전송했던 json정보가 들어 있는 것을 확인할 수 있습니다.
특이한 건 HTTP::Tiny 문서에는 post_form 함수에 대한 설명도 있는데요. 요즘은 json을 데이터로 넘기는 경우가 많아서 그냥 post를 사용했습니다.
post_form은 html의 form요청의 형태로 요청을 보낼 때 사용합니다. 다음에는 post_form을 사용하는 예제를 만들어보겠습니다.
perl - HTTP::Tiny 로 http POST request 날리기. form 데이터 사용
perl - HTTP::Tiny 로 http POST request 날리기. json 데이터 사용 perl - HTTP::Tiny 로 http GET request 날리기 GET 요청 날리기 GET 요청 날리기 - parameter 추가 GET 요청 날리기 - header 추가 POST 요청..
junho85.pe.kr
참고
HTTP::Tiny - A small, simple, correct HTTP/1.1 client - metacpan.org
NAME HTTP::Tiny - A small, simple, correct HTTP/1.1 client VERSION version 0.076 SYNOPSIS use HTTP::Tiny; my $response = HTTP::Tiny->new->get('http://example.com/'); die "Failed!\n" unless $response->{success}; print "$response->{status} $response->{reason
metacpan.org