我想通过使用户仅输入对所有用户都相同的密码来进行身份验证。
最初,我认为与/form-submission.js
函数触发器有关,例如:
/
,具有登录表单。/secretpassword/site.html
/secretpassword/site.html
上显示秘密内容如果我这样做,我认为我有两个问题:
form-submission
来回应自己的逻辑?这是我的form-submission
函数代码
我可以看到我的函数正在函数日志中运行,但是响应仍然是netlify的表单响应页面
HTML表单操作与发布位置相同
passwordForm.addEventListener('submit', function(e) {
e.preventDefault();
var formData = Array.from(new FormData(passwordForm), e => e.map(encodeURIComponent).join('=')).join('&');
fetch('secretpassword', {
method: 'POST',
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: formData
})
.then((response) => {
console.log('response', response)
})
.catch((ex) => {
console.log('ex', ex);
});
});
form-submission.js
exports.handler = (event, context, callback) => {
let data = JSON.parse(event.body).payload.data,
password = data.password.toLowerCase();
if (password !== 'secretpassword') {
console.log('fail!')
return callback(null, {
statusCode: 401,
body: 'not authorized'
})
}
console.log('success!')
return callback(null, {
statusCode: 200,
body: 'secret information'
})
}
任何帮助将不胜感激!谢谢!