Tôi muốn người dùng của mình truy cập thư mục được bảo vệ trên miền của tôi. Cả hai .htaccess và .htpasswd đều được tạo và nằm trong thư viện được bảo vệ.Xác thực cơ sở HTTP, sử dụng python
Các html mà yêu cầu một sự kết hợp username/password là:
<form method="post" enctype="multipart/form-data" action="bin/logintest.cgi">
Username: <input type="text" name="username" size="20" value="please enter.."><br>
Password: <input type="password" name="password" size="20"><BR>
<input name="submit" type="submit" value="login">
Các python cgi script là:
#!/usr/bin/python
import urllib2
import base64
import cgi
form = cgi.FieldStorage()
username = form.getfirst("username")
password = form.getfirst("password")
request = urllib2.Request("http://www.mydomain.com/protecteddir/index.html")
base64string = base64.encodestring('%s:%s' % (username, password)).replace('\n', '')
request.add_header("Authorization", "Basic %s" % base64string)
result = urllib2.urlopen(request)
print "Content-type: text/html\n\n"
print result
Khi tôi nhập tên người dùng/mật khẩu kết hợp đúng, 'trang web' kết quả là:
>
Tôi nghi ngờ rằng mã python của tôi "kết quả in" là không chính xác. Làm thế nào tôi có thể sửa lỗi này?
Cảm ơn bạn, đề xuất của bạn hoạt động! –