Python FlaskAPI返回错误的JSON或空白列表

Python FlaskAPI返回错误的JSON或空白列表,python,flask,Python,Flask,我正在使用的Flask应用程序有问题,每当我从邮递员那里发送POST请求时,我都会收到一个空白列表 这是我正在使用的代码: 1 @app.route('/twist', methods=['POST']) 2 def twist(): 3 try: 4 session = Session(request.json.get('url'), nameserver=NAMESERVER) 5 session.scan() 6 ses

我正在使用的Flask应用程序有问题,每当我从邮递员那里发送
POST
请求时,我都会收到一个空白列表

这是我正在使用的代码:

1  @app.route('/twist', methods=['POST'])
2  def twist():
3       try:
4          session = Session(request.json.get('url'), nameserver=NAMESERVER)
5          session.scan()
6          sessions.append(session)
7          sessionUrl = session.status()
8          urlId = sessionUrl['id']
9          for s in sessions:
10              if s.id == urlId:
11                  return jsonify(s.domains()), 201
12              else:
13                  return return jsonify({'message': 'Scan session not found'}), 404
14      except Exception as err:
15         return jsonify({'message': 'Invalid domain name'}), 400
如果我去掉第10行,我在第一次尝试时确实会得到一个有效的响应,但是如果我用其他URL发送第二个请求,我会得到与第一个请求相同的JSON

我使用的是我的基本代码,我没有使用原始API,因为我需要它只处理一个请求

编辑: 如果我像这样将函数一分为二:

@app.route('/twist', methods=['POST'])
def twist():
    try:
        session = Session(request.json.get('url'), nameserver=NAMESERVER)
        session.scan()
        sessions.append(session)
        sessionUrl = session.status()
        urlId = sessionUrl['id']
        return jsonify(urlId), 201
    except Exception as err:
        return jsonify({'message': 'Invalid domain name'}), 400

@app.route('/twist/<sid>/domains')
def api_domains(sid):
    for s in sessions:
        if s.id == sid:
            return jsonify(s.domains())
    return jsonify({'message': 'Scan session not found'}), 404
@app.route('/twist',methods=['POST'])
def twist():
尝试:
session=session(request.json.get('url'),nameserver=nameserver)
session.scan()
sessions.append(会话)
sessionUrl=session.status()
urlId=sessionUrl['id']
返回jsonify(urlId),201
除异常作为错误外:
返回jsonify({'message':'Invalid domain name}),400
@app.route(“/twist//domains”)
def api_域(sid):
对于参加会议的学员:
如果s.id==sid:
返回jsonify(s.domains())
返回jsonify({'message':'Scan session not found'}),404

我使用
urlId
作为
sid
发出两个单独的请求,它就像一个符咒一样工作。

您想在第一次找到的会话上
返回
?如果没有会话与该条件匹配,会发生什么情况?它应该返回一个带有URL可能变体的字典,即:URL=google.com应该返回{'original':'google.com','1':'go0gle.com','2':'g0ogle.com','3':'googgl3.com',等等。}你可以看到这个的在线版本,但你没有回答我的问题。对不起,
.domains()
根据存储在
会话中的会话生成信息,它应该返回由
.domains()
生成的信息,如果没有会话与条件匹配,它应该返回
{'message':'Scan session not found'},404,似乎我忘了在第12行和第13行写这一行,现在您的代码将在任何情况下的第一次迭代中返回。名单上的其他会议将不予考虑。