メール一覧取得(一斉メール配信)
サンプルプログラム Java
package jp.co.rakus;
import javax.net.ssl.HttpsURLConnection;
import java.io.*;
import java.net.URL;
import java.util.Hashtable;
import java.util.Map;
public class GetMailList {
public static void main(String args[]) {
System.out.print(new GetMailList().getMailList());
}
///
/// メール一覧取得API(一斉メール配信)
///
/// 結果メッセージ(Response)
public String getMailList() {
String msg = "";
try {
/////////////////////////////
// 接続先URLを用意
/////////////////////////////
// ドメイン(●の部分) https://●●●●●/■■■■■/api/index.php?ac=CreateNewMail
String domain = "●●●●●";
// ログインURL(■の部分) https://●●●●●/■■■■■/api/index.php?ac=CreateNewMail
String loginUrl = "■■■■■";
/////////////////////////////
// POSTパラメータを用意
/////////////////////////////
Hashtable postParams = new Hashtable();
// 接続用パスワード
postParams.put("transport_password", "◆◆◆◆◆");
// 文字コード
postParams.put("charset", "◆");
// 取得形式
postParams.put("return_format", "◆◆◆");
// メール状態
postParams.put("mail_status", "◆");
// メール形式
postParams.put("mail_type", "◆");
// 期間指定(FROM)
postParams.put("from_date", "◆");
// 期間指定(TO)
postParams.put("to_date", "◆");
/////////////////////////////
// HTTPリクエストを用意
/////////////////////////////
URL urlobj = new URL("https://" + domain + "/" + loginUrl + "/api/index.php?ac=GetMailList");
HttpsURLConnection http = (HttpsURLConnection) urlobj.openConnection();
http.setRequestMethod("POST");
http.setDoOutput(true);
String boundary = "__boundary__xxx";
http.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + boundary);
/////////////////////////////
// 送信データを作成
/////////////////////////////
StringBuffer sb = new StringBuffer();
for (Map.Entry e : postParams.entrySet()) {
sb.append("--" + boundary + "\r\n");
sb.append("Content-Disposition: form-data; name=\"" + e.getKey() + "\"\r\n\r\n" + e.getValue() + "\r\n");
}
// フッターを書き込み
sb.append("--" + boundary + "\r\n");
/////////////////////////////
// POST送信
/////////////////////////////
OutputStreamWriter os = new OutputStreamWriter(http.getOutputStream());
os.write(sb.toString());
os.flush();
os.close();
/////////////////////////////
// レスポンス取得
/////////////////////////////
InputStreamReader is = new InputStreamReader(http.getInputStream());
BufferedReader res = new BufferedReader(is);
String line;
while ((line = res.readLine()) != null) {
msg += line + "\r\n";
}
res.close();
is.close();
} catch (Exception e) {
return e.getMessage();
}
return msg;
}
}