我必须为 Flask 项目实现一个非常简单的用户身份验证,用户无需用户名即可访问受保护的页面。我已经检查了Flask-BasicAuth扩展,但它“太多”了,你需要用户名才能使用它。我只想在我的烧瓶文件中声明一个列表,其中包含密码作为字符串,可用于访问特定页面及其子页面。
所以我的目标是实现这样的目标:
xy.com/protected-page并使用密码passwords = ['pass1', 'pass2', 'pass3'](静态且未存储在数据库中)xy.com/protected-page,xy.com/protected-page/sub-page1, xy.com/protected-page/sub-page2等等...如果我可以设置会话时间,那将是一个非常棒的奖励。
是否可以?我对 Flask 很陌生,所以如果有人能帮助我,我将不胜感激。
我有一个像这样的字符串:
rawString "sampleStringWithNumber/obj3453andBlabla"
Run Code Online (Sandbox Code Playgroud)
我想实现这个目标:
newString = "obj3453"
Run Code Online (Sandbox Code Playgroud)
我知道有很多相关的问题,如果下一个字符obj3453是静态的,那就不会有问题,但不幸的是,下一个字符可以是任何字母(单词),也可以有更多/少于4数字.
那么可以做这样的事情:
def find_between( s, first, last ):
try:
start = s.index( first ) + len( first )
end = s.index( last, start )
return s[start:end]
except ValueError:
return ""
print ((find_between(rawString, "/","the_next_string_thats_not_a_number")))
Run Code Online (Sandbox Code Playgroud)
基本上我想传递一个变量作为第二个参数,除了数字之外可以是任何东西.
我有一个列表,其中int包含我想要相互添加的值并记录结束值.到目前为止,我可以创建一个可行的解决方案,但它不是那么优雅,如果有人能给我一个更聪明的解决方案来实现相同的结果,我会很高兴.
numberList = (list(string_dict.values()))
numz = []
placeholder = 0
for x in numberList:
numz.append(int(x))
for y in numz:
placeholder = placeholder + y
print (placeholder)
# [1,2,3]
# result: 6
Run Code Online (Sandbox Code Playgroud)