웹개발 및 최신 테크 소식을 전하는 블로그, 웹이즈프리

HOME > webdevetc

AWS Lambda를 사용한 외부 url 요청, request 예제보기

Last Modified : 2017-12-29 / Created : 2017-11-18
9,384
View Count
AWS를 사용하는 경우 Lambda를 사용하여 여러가지 다양한 함수를 실행할 수 있습니다. 오늘은 Lambda 함수를 사용하여 외부 url을 invoking, request 요청을 수행해보려합니다.


# AWS Lambda를 사용한 외부 url request, 수행하기

시도하려는 부분은 특정 url을 요청하는 것이 전부입니다. 만약 아래의 url을 AWS Lambda Function을 사용하여 request하려면? 아래는 http://webisfree.com으로 요청하는 예제입니다.

@ lambda.js
var http = require('http');
exports.handler = function(event, context) {
  http.get('http://webisfree.com',  function(res) {
    console.log('Success');
  }).on('error', function(error) {
    console.log('Failed');
  });
};
위 방법은 Lambda 코드의 인라인 편집을 사용하였고 런타임(runtime) 방법으로 Node.js를 사용하였습니다.

! 만약 https 프로토콜에 대한 요청인 경우

이 경우 단순하게 요청 url을 바꾸어 실행해보면 에러가 발생합니다. 이때는 요청할 모듈을 https로 require()의 값을 변경합니다. 아래와 같이 적용하게됩니다.
var https = require('https');

변수명이 http에서 https로 바뀌었으므로 함수 역시 https 변수를 사용하여 호출합니다.
https.get('https://webisfree.com', function(res) {
  console.log('Success');
})



# 마치면서 사실 처음에는 Python의 requests 모듈을 사용하여 url에 요청을 보내려고 하였습니다. 하지만 python 모듈이 없어 설치없이 동작하지 않았습니다. 이를 수행하려면 VPC 사용 및 모듈을 설치가 필요할 것 같아 Node.js를 사용하였습니다. 만약 Python을 사용하면 Module이 없어 에러가 발생할 수 있다는 점 참고하시기 바랍니다.

Previous

블로그 또는 웹사이트 글을 Facebook에 올리기

Previous

레거시 함수, 레거시 코드란 무엇인가?