Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- WINDOWS10
- Spring
- G1다이아몬드
- naver cloud platform
- 종로예물
- oracle db
- 포맷
- 허먼밀러
- ORA-65096
- ServerTimeZone
- pom.xml
- cloud outbound mailer
- PKIX
- 웨딩밴드
- G1diamond
- 지원다이아몬드
- NAVER API
- NAVER SMS
- 윈도우10
- SENS API
- ora-00984
- 종로다이아반지
- 스프링 프레임 워크
- java
- 당근마켓
- SpringMVC
- 웨딩링
- Windows 10
- Oracle
- DATABASE
Archives
- Today
- Total
더 나은 개발자가 되고싶다..
[Java] Naver Cloud Platform _ Cloud Outbound Mailer 사용하기 본문
이번에는 네이버 Cloud Outbound Mailer를 자바로 개발 해보겠다.
구글링을 해보면
네이버에서 제공하는 gitHub에 파이썬을 사용한 버전
https://github.com/NaverCloudPlatform/outbound_mailer_python_sample
Songsari님의 PHP 버전을 볼 수 있었다.
https://yoshikixdrum.tistory.com/195
하지만 나는 자바 버전이 필요했고 Cloud Platform 도큐먼트를 뒤져보다가 JDK버전을 쉽게 구할 수 있었다.
https://docs.ncloud.com/ko/email/email-1-3.html
간단하게 메일을 보내는 코드를 첨부하자면
public class V1ApiExample2 {
public static void main(String[] args) throws IOException {
ApiClient apiClient = new ApiClient.ApiClientBuilder()
.addMarshaller(JsonMarshaller.getInstance())
.addMarshaller(XmlMarshaller.getInstance())
.addMarshaller(FormMarshaller.getInstance())
.setCredentials(new PropertiesFileCredentialsProvider("lib/credentials.properties").getCredentials())
.setLogging(true)
.build();
V1Api apiInstance = new V1Api(apiClient);
List<EmailSendRequestRecipients> esrrList = new ArrayList<EmailSendRequestRecipients>();
EmailSendRequestRecipients esrr = new EmailSendRequestRecipients();
esrr.setAddress("수신자 이메일");
esrr.setName("수신자 이름");
esrr.setType("R");
esrrList.add(esrr);
EmailSendRequest requestBody = new EmailSendRequest();
requestBody.setBody("본문");
requestBody.setRecipients(esrrList);
//requestBody.setTemplateSid({templateID}); 템플릿을 만들었다면 템플릿 번호
requestBody.setSenderAddress("발송자 아이디");
requestBody.setSenderName("발송자 이름");
requestBody.setTitle("");
requestBody.setConfirmAndSend(false);
String X_NCP_LANG = "ko-KR"; // String | 언어 (ko-KR, en-US, zh-CN), default:en-US
System.out.println(requestBody);
try {
// Handler Successful response
ApiResponse<EmailSendResponse> result = apiInstance.mailsPost(requestBody, X_NCP_LANG);
} catch (ApiException e) {
// Handler Failed response
int statusCode = e.getHttpStatusCode();
Map<String, List<String>> responseHeaders = e.getHttpHeaders();
InputStream byteStream = e.getByteStream();
e.printStackTrace();
} catch (SdkException e) {
// Handle exceptions that occurred before communication with the server
e.printStackTrace();
}
}
}
1. credentials.properties 파일은 다음과 같이 생성한후에 호출하면 된다,
type=iam
apiKey={apiKey}
accessKey={accessKey}
secretKey={secretKey}
2. 자바프로젝트로 실행을 했을 경우 코드이다. 이를 실행하면 pom.xml이 없기때문에 하나하나 jar파일을 다운받아 넣어줘야하는데 나같은 경우에는 Maven Repository에서 jar파일을 다 다운 받았다.
받은 jar파일의 목록은 아래와 같다.
※nes-client-1.6.0.jar 파일이 반드시 필요한데 이는 네이버에서 제공하는 jdk에 들어있다.!!
이것들을 전부 넣어주고 실행하면 자바프로젝트에서 간단하게 메일 전송이 실행 가능하다.
'코딩 > Java' 카테고리의 다른 글
[java]Naver 문자 API SENS SMS 사용하기 (3) | 2020.12.09 |
---|---|
[Java Day01]변수와 타입 (0) | 2020.05.26 |