50 lines
1.3 KiB
Python
50 lines
1.3 KiB
Python
from crypt import methods
|
|
import os
|
|
import sys
|
|
import typing as t
|
|
import json
|
|
|
|
from datetime import datetime
|
|
from flask import Flask, jsonify, url_for, request, redirect
|
|
|
|
LISTENING_PORT = int(sys.argv[1])
|
|
FORMATO = sys.argv[2]
|
|
app = Flask(__name__)
|
|
app.config['JSONIFY_PRETTYPRINT_REGULAR'] = True
|
|
app.config['JSON_SORT_KEYS'] = False
|
|
|
|
def get_user(username: str) -> t.Optional[str]:
|
|
if FORMATO == '1':
|
|
command = 'check %s 6' % username
|
|
result = os.popen(command).readlines()
|
|
final = result[0].strip()
|
|
return final
|
|
elif FORMATO == '2':
|
|
command = 'check %s 7' % username
|
|
result = os.popen(command).readlines()
|
|
final = result[0].strip()
|
|
return final
|
|
|
|
|
|
@app.route('/checkUser',methods = ['POST', 'GET'])
|
|
def check_user():
|
|
if request.method == 'POST':
|
|
try:
|
|
req_data = request.get_json()
|
|
user = req_data.get("user")
|
|
x = get_user(user)
|
|
return x
|
|
except Exception as e:
|
|
return jsonify({'error': str(e)})
|
|
else:
|
|
try:
|
|
return 'Cannot GET /checkUser'
|
|
except Exception as e:
|
|
return jsonify({'error': str(e)})
|
|
|
|
|
|
if __name__ == '__main__':
|
|
app.run(
|
|
host='0.0.0.0',
|
|
port=int(sys.argv[1]) if len(sys.argv) > 1 else LISTENING_PORT,
|
|
) |