我正在尝试构建一个烧瓶应用程序,该应用程序从客户端获取文件,对其进行处理并发送返回响应。问题是该应用程序在失败情况下(如果未收到文件(给出了正确的响应,但是,在处理文件后,在成功案例中不返回对客户的响应。
。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)
我使用Postman将文件(尽管文件上传(Multipart/for-data( (发布到端点。
如果我发布了一个文件以外的任何对象,例如空或文本(失败情况(,则我将收到预期的{'result': 'No file received'}
。但是,当我发送文件时,java.lang.NullPointerException
是结果。
我什至尝试将有效的案例响应对{'result': 'HardCodedValue'}
进行硬编码,但是Pycharm Restful服务仍然返回java.lang.NullPointerException
。在原始的,我的输出, result_after_processing 是json。
注意:java.lang.NullPointerException
在Pro Pycharm的Restful Web服务上,而不是来自Python。Python正确打印了预期的结果。
我工作了5个小时,在互联网上尝试了所有可能的解决方案,但仍未成功地找出解决方案。请帮助您提供有关此的意见。
谢谢。
看来问题在于Pro Pycharm的"测试retsful Webservice",当我使用Postman时,我收到了预期的输出。