Recommended
PDF
HELYX-OS in DEXCS2016 for OpenFOAM
PDF
DEXCS 2018 for OpenFOAM ,How to install
PDF
PDF
KH Coder 2 チュートリアル(スライド版)
PDF
PDF
PDF
PDF
Docker道場オンライン#1 Docker基礎概念と用語の理解
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
ODP
Java の抽象クラス・インタフェース・無名クラスを理解しよう
PPTX
PPTX
PDF
PDF
Java デザインパターン勉強会 第5回(最終回)
PPT
知って帰ろうB級エンジニア(DBFluteフェス2014)
PDF
デジタルメディア創作部勉強会「オブジェクト指向入門1」
PPTX
PPT
PPTX
PDF
DOCX
PPTX
LINE API × heroku ×selenium
More Related Content
PDF
HELYX-OS in DEXCS2016 for OpenFOAM
PDF
DEXCS 2018 for OpenFOAM ,How to install
PDF
PDF
KH Coder 2 チュートリアル(スライド版)
PDF
PDF
PDF
PDF
Docker道場オンライン#1 Docker基礎概念と用語の理解
Viewers also liked
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
ODP
Java の抽象クラス・インタフェース・無名クラスを理解しよう
PPTX
PPTX
PDF
PDF
Java デザインパターン勉強会 第5回(最終回)
PPT
知って帰ろうB級エンジニア(DBFluteフェス2014)
PDF
デジタルメディア創作部勉強会「オブジェクト指向入門1」
PPTX
PPT
PPTX
Similar to HTTPとは(HerokuとADTで実践編)
PDF
DOCX
PPTX
LINE API × heroku ×selenium
PPTX
KEY
日本androidの会 中国支部 29回勉強会 github
PDF
Cloudy会 @cloudymeeting ハイブリッドクラウドとheroku/EC2決算法
PPTX
PDF
PDF
PDF
PDF
PDF
Git for Begineers GitHub ハンズオン
PDF
PDF
PDF
PDF
Rails と Rack と HTTP と通信の話
More from Yukiko Kato
PPTX
PPTX
PPTX
DOCX
DOCX
PPTX
PPTX
PPTX
PPTX
【AWS】EC2インスタンスでWebサーバ起動(for Mac)
HTTPとは(HerokuとADTで実践編) 1. 2. 3. 4. 5. 6. 7. PaaS(Platform as a Service)
ソフトウウェアを構築させる土
台となるプラットフォームを、
インターネット経由で使用する
ことが出来るサービス
Herokuの場合、ベースとなるOS
は、DebianもしくはDebianを
ベースに開発されたUbuntu
8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. src/main/webapps/index.jsp に以下を追
加する
<a href=“hello?method=get”>GETリクエス
ト</a><br>
<form action=“hello” method=“post”>
POSTリクエストをする
<input type=“text”>
<input type=“submit”
name=“submit” value=“送信”>
</form>
25. HelloServlet.javaを変更する
doGetメソッド内に以下のように修正
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
ServletOutputStream out = resp.getOutputStream();
StringBuffer sb = new StringBuffer();
sb.append("---------- request Line ----------------n");
sb.append("method : ").append(req.getMethod()).append("n");
sb.append("requestURL : ").append(req.getRequestURI()).append("n");
sb.append("get query : ").append(req.getQueryString()).append("n");
Enumeration params = req.getParameterNames();
while(params.hasMoreElements()){
String param = (String) params.nextElement();
sb.append(param).append(" :
").append(req.getParameter(param)).append("n");
}
sb.append("n");
26. sb.append("---------- request Headers ----------------n");
Enumeration headerNames = req.getHeaderNames();
while(headerNames.hasMoreElements()) {
String headerName = (String) headerNames.nextElement();
sb.append(headerName).append(" :
").append(req.getHeader(headerName)).append("n");
}
out.write(sb.toString().getBytes());
out.flush();
out.close();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doGet(req, resp);
}
27. 28. GET /index.html HTTP/1.1
Host : localhost:8080
Accept : text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language : ja,en-US;q=0.8,en;q=0.6
Referer : http://localhost:8080/
User-Agent : Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/30.0.1599.66 Safari/537.36
Connection : keep-alive
Accept-Encoding : gzip, deflate
aaa=bbb&ccc=dddd
空行(CRLF)
29. 30. 31. 番号 意味
200 OK(成功)
302 Found (リダイレクト)
304 Not Modified (キャッシュを参照)
400 Bad Request (Clientからのリクエスト不備)
403 Forbidden (アクセス禁止)
404 Not Found (ページが存在しない)
500 Internal Server Error (サーバエラー)
503 Service Unavailable (サーバが過負荷状態)
32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. Heroku Eclipse Pluginの設定
https://devcenter.heroku.com/articles/get
ting-started-with-heroku-eclipse