例如
t = ["A", "A", "A", "b", "b"]
s = ["A", "A", "b", "b"]
Run Code Online (Sandbox Code Playgroud)
s 并不包含 t 中的每个元素。t 包含 s 中的每个元素。
我想出了这个,但想知道是否有更有效的方法
def check(l1, l2):
for i in l2:
if(l2.count(i) > l1.count(i)):
return False
return True
Run Code Online (Sandbox Code Playgroud) 例如,当我登录时,我使用有效负载{ 'userId': 1, '2fa': false}(/login路由)创建一个访问令牌,然后我执行另一条路由“/login/auth”,例如检查一次性密码是否正确,如果是,我创建了另一个jwt,但是这个2fa 设置为 true 的时间。然后后续的routes会检查2fa是否正确运行。如果没有,就会出错。这是执行此操作的正确方法还是hacky?
// middleware
const auth = (req, res, next) => {
const token = req.header('access-token');
if (!token) return res.status(401).json('Not Authorized');
try {
const payload = jwt.verify(token, 'secret1');
req.payload = payload
next();
} catch (ex) {
res.status(400).json('Invalid.');
}
};
// routes
router.post(
'/login',
async (req, res) => {
try {
/* login database stuff goes here if successful creates access token
*/
const token = jwt.sign(
{ userId, twoFactorAuthenticated: false …Run Code Online (Sandbox Code Playgroud)