質問編集履歴
1
追記の追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,3 +1,117 @@
|
|
1
|
+
### 追記11/16
|
2
|
+
|
3
|
+
コメント欄でアドバイス頂き、追加コードをreturnの前に配置することでエラーを回避できました。
|
4
|
+
しかし、メールアドレス入力・登録サイトで”登録”ボタンを押しても、何も反応がありません。
|
5
|
+
cloudwatchで確認しても何もログが記録されていません。
|
6
|
+
現在はreturn内に何もない状態が問題でしょうか?
|
7
|
+
追加・修正方法等教えて下さい。
|
8
|
+
|
9
|
+
現在のWEBサイトのhtml文も掲載します。
|
10
|
+
|
11
|
+
|
12
|
+
```python
|
13
|
+
(省略)
|
14
|
+
|
15
|
+
sendmail(email, "登録ありがとうございました", mailbody)
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
body = {'result' : 1}
|
20
|
+
|
21
|
+
result = {
|
22
|
+
'statusCode' : 200,
|
23
|
+
'headers' : {
|
24
|
+
'content-type' : 'application/json'
|
25
|
+
},
|
26
|
+
'body' : json.dumps(body)
|
27
|
+
}
|
28
|
+
|
29
|
+
|
30
|
+
# 結果を返す
|
31
|
+
return {
|
32
|
+
|
33
|
+
|
34
|
+
'''
|
35
|
+
'statusCode' : 200,
|
36
|
+
'headers' : {
|
37
|
+
'content-type' : 'text/html'
|
38
|
+
},
|
39
|
+
'body' : '<!DOCTYPE html><html><meta charset="UTF-8"></head><body>登録ありがとうございました。</body></html>'
|
40
|
+
'''
|
41
|
+
}
|
42
|
+
except:
|
43
|
+
import traceback
|
44
|
+
traceback.print_exc()
|
45
|
+
return {
|
46
|
+
'statusCode' : 200,
|
47
|
+
'headers' : {
|
48
|
+
'content-type' : 'text/html'
|
49
|
+
},
|
50
|
+
'body' : '<!DOCTYPE html><html><head><meta charset="UTF-8"></head><body>内部エラーが発生しました。</body></html>'
|
51
|
+
}
|
52
|
+
|
53
|
+
```
|
54
|
+
|
55
|
+
メールアドレスの入力・登録サイトのhtmlコード
|
56
|
+
```html
|
57
|
+
|
58
|
+
<!DOCTYPE html>
|
59
|
+
<html lang="ja">
|
60
|
+
<head>
|
61
|
+
<meta charset="UTF-8">
|
62
|
+
<script src="http://code.jquery.com/jquery-3.2.1.min.js"></script>
|
63
|
+
<script>
|
64
|
+
function regist(){
|
65
|
+
<!-- XXXXXXXXXXXXXは、API GATEWAYのエンドポイント(図5-13)-->
|
66
|
+
var apiurl = 'https://XXXXXXX.execute-api.us-west-2.amazonaws.com/prod/regist';
|
67
|
+
var form = $('#myform');
|
68
|
+
var formdata = form.serialize();
|
69
|
+
|
70
|
+
$.ajax({
|
71
|
+
type : 'POST',
|
72
|
+
url : apiurl,
|
73
|
+
data : formdata,
|
74
|
+
dataType : 'json'
|
75
|
+
}).done(function(response) {
|
76
|
+
if (response.result == 1) {
|
77
|
+
$('#msg').html('登録ありがとうございました。ダウンロード先を記載したメールをお送りしました');
|
78
|
+
} else {
|
79
|
+
$('#msg').html('エラーが発生しました。' + response.message);
|
80
|
+
}
|
81
|
+
}).fail(function(request, status, err) {
|
82
|
+
alert(status);
|
83
|
+
});
|
84
|
+
|
85
|
+
return false;
|
86
|
+
}
|
87
|
+
</script>
|
88
|
+
</head>
|
89
|
+
<body>
|
90
|
+
<form id="myform">
|
91
|
+
氏名:<input type="text" name="username"><br>
|
92
|
+
メールアドレス:<input type="text" name="email">
|
93
|
+
<input type="button" value="登録" onclick="regist()">
|
94
|
+
</form>
|
95
|
+
<p id="msg"></p>
|
96
|
+
|
97
|
+
<!--
|
98
|
+
<form method="POST" action="https://yoqby9e8kc.execute-api.us-west-2.amazonaws.com/prod/regist">
|
99
|
+
氏名:<p><input type="text" name="username" /></p><br>
|
100
|
+
メールアドレス:<p><input type="text" name="email" /></p>
|
101
|
+
<input type="submit" value="登録">
|
102
|
+
</form>
|
103
|
+
-->
|
104
|
+
</body>
|
105
|
+
</html>
|
106
|
+
```
|
107
|
+
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
|
114
|
+
|
1
115
|
### 前提
|
2
116
|
|
3
117
|
現在、AWSのlambdを[AWS関連の書籍](https://www.amazon.co.jp/AWS-Lambda%E5%AE%9F%E8%B7%B5%E3%82%AC%E3%82%A4%E3%83%89-%E5%A4%A7%E6%BE%A4-%E6%96%87%E5%AD%9D-ebook/dp/B0764C5MT5/ref=sr_1_2_sspa?adgrpid=60120324664&gclid=CjwKCAiA68ebBhB-EiwALVC-NsitDdzBQibxNLmRa1jdcuLbf0fYAXUA6LTbyJvZi0p05d7nMttH4RoCHWIQAvD_BwE&hvadid=618553085031&hvdev=c&hvlocphy=1009244&hvnetw=g&hvqmt=e&hvrand=3780511519880649787&hvtargid=kwd-587128490392&hydadcr=27268_14598057&jp-ad-ap=0&keywords=aws+lambda%E5%AE%9F%E8%B7%B5%E3%82%AC%E3%82%A4%E3%83%89&qid=1668479822&qu=eyJxc2MiOiIyLjExIiwicXNhIjoiMS43MSIsInFzcCI6IjEuMzcifQ%3D%3D&sr=8-2-spons&psc=1&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUExMEtYQ0c0WU9VMzlWJmVuY3J5cHRlZElkPUEwNzQzNTQ3MTFBOTdCV0dMWkNXUCZlbmNyeXB0ZWRBZElkPUEzMk1YT1c1TjRGNENYJndpZGdldE5hbWU9c3BfYXRmJmFjdGlvbj1jbGlja1JlZGlyZWN0JmRvTm90TG9nQ2xpY2s9dHJ1ZQ==)で勉強しています。
|