2013-06-12 6 views
1

SendHub의 설명서 상태로 데이터 및 json 데이터가있는 게시물을 보냅니다. 이것은 그들이 준 컬 예는 펄과 LWP::User 요원이 작업을 수행하려고하지만 요청이 제대로 코드가 있습니까 잘못된 요청 또는LWP :: UserAgent SendHub API 문제

무단 하나를 얻고있다?

컬 -H "콘텐츠 형식 : 응용 프로그램/JSON"-X POST --data '{ "연락처"[1111], "텍스트": "테스트"}'https://api.sendhub.com/v1/messages/?username

require LWP::UserAgent; 

my $uri = 'https://api.sendhub.com/v1/messages/?username=MY_USERNAME\&api_key=MY_KEY_NUMBER'; 
my $json = '{"contacts":[18005551212],"text":"testing"}'; 
my $req = HTTP::Request->new('POST',$uri); 
$req->header('Content-Type' => 'application/json'); 
$req->content($json); 

my $lwp = LWP::UserAgent->new; 
my $response=$lwp->request($req); 

if ($response->is_success) { 
    print $response->decoded_content; 
} 
else { 
    die $response->status_line; 
} 
+0

달리 할 이유가 없다면, 보통'require'를 사용하는 대신'use LWP :: UserAgent'를 사용해야합니다. 이는 모든 모듈에 적용됩니다. – Borodin

답변

1

그것을 기본적으로 좋아 보인다.

URL에 앰퍼샌드 이전의 백 슬래시는 무엇입니까?

'https://api.sendhub.com/v1/messages/?username=MY_USERNAME\&api_key=MY_KEY_NUMBER' 

가 나는

'https://api.sendhub.com/v1/messages/?username=MY_USERNAME&api_key=MY_KEY_NUMBER' 

해야한다고 생각하지만 401 Unauthorized을 받고 있다면 다음 요청이 올바르지 만 사용자 이름과 키가 잘못 가장 가능성이 높습니다.

+1

URL이 인용되지 않기 때문에 컬 예제에서 백 슬래시가 필요합니다. perl 코드에서 제거해야합니다. – ysth

관련 문제