Notice
Recent Posts
Recent Comments
준호씨의 블로그
perl - HTTP::Tiny 로 http POST request 날리기. json 데이터 사용 본문
반응형
의 후속 편. 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을 사용하는 예제를 만들어보겠습니다.
참고
반응형
'개발이야기' 카테고리의 다른 글
git commit 대신 ci - alias 기능 으로 타이핑 줄이기 (0) | 2017.09.27 |
---|---|
redis 서버 외부 접근 오픈 및 password 설정 (0) | 2017.09.27 |
python 으로 lmtp client 구현하기 (0) | 2017.09.21 |
로그 비우기 - truncate log (0) | 2017.09.20 |
crontab 로그 확인 (0) | 2017.09.19 |
Comments