Flask returns 无响应 - 邮递员“java.lang.NullPointerException”错误

Flask returns no response - Postman 'java.lang.NullPointerException" error

我正在尝试构建一个从客户端获取文件、处理它并发送 return 响应的烧瓶应用程序。问题是应用程序在失败的情况下给出正确的响应(如果没有收到文件),但是,return在成功的情况下,即在处理文件后,没有对客户端的响应。

from flask import Flask, request, jsonify

@application.route('/file', methods=['GET', 'POST'])
def sid():
    """
    Process the PDF File, and return response
    :return:
    """
    print(request)
    if request.method == 'POST':
        if request.files:
            result_after_processing = #After processing
            print(result_after_processing) # This is giving expected output
            return jsonify({'result': result_after_processing}, 200)
        else:
            return jsonify({'result': 'No file recieved'}, 400)


if __name__ == "__main__":
    application.run(debug=True)

我使用邮递员 POST 将文件(通过文件上传 (multipart/for-data))到端点。

如果我 POST 除了文件以外的任何对象,如空对象或文本(失败案例),我将收到预期的 {'result': 'No file received'}。但是,当我发送文件时,结果是java.lang.NullPointerException

我什至尝试将有效案例响应硬编码到 {'result': 'HardCodedValue'},但 Pycharm RESTful 服务仍然 return java.lang.NullPointerException。原来,我的输出 result_after_processing 是 JSON.

注意:java.lang.NullPointerException 在 Pro PyCharm 的 RESTful Web 服务上,而不是来自 Python。 Python 正确打印预期结果。

我工作了 5 个小时,在互联网上尝试了所有可能的解决方案,但仍然没有找到解决方案。请帮助提供您的意见。

谢谢。

看起来问题出在 Pro PyCharm 的 "Test RESTful Webservice",我在使用 POSTMAN 时收到了预期的输出。