我构建了一个 NodeJS 服务器,其中包含一个用于用户及其密码的小型数据库。我为此创建了我的小网站,您可以在其中输入您的用户名和密码,它会为您创建一个会话以便您登录。它工作正常。
现在我想用Python写一些东西来自动登录一个小树莓派。经过大量的研究,我想出了一个这样的python程序:
import requests
def authentification():
s = Session();
req = Request('POST', "http://192.168.7.1:3000/auth")
prepped = req.prepare()
prepped.body = 'username=test&password=test'
#del prepped.headers['Content-Type']
resp = s.send(prepped)
print resp.text
r = requests.get('http://192.168.7.1:3000/home')
print r.text
我在 NodeJS 应用程序中的函数如下所示:
app.post('/auth', function(request, response) {
var username = request.body.username;
var password = request.body.password;
console.log("Somebody tries to acces");
console.log(username)
if (username && password) {
connection.query('SELECT * FROM accounts WHERE username = ? AND password = ?', [username, password], function(error, results, fields) {
if (results.length > 0) {
request.session.loggedin = true;
request.session.cookie.maxAge = 3000;
request.session.username = username;
response.redirect('/home');
} else {
response.send('Incorrect Username and/or Password!');
}
response.end();
});
} else {
response.send('Please enter Username and Password!');
response.end();
}
});
当我尝试像我在浏览器中使用我的程序那样对您进行身份验证时,我最终会得到: response.send('请输入用户名和密码!'); 我的发布请求有什么问题,我需要更改什么才能找到我的密码和用户名?
对我来说另一个重要的问题是如何在 Python 中保持 Session 处于唤醒状态以执行其他一些请求。对于文件等?
相关分类