Hola, estoy recibiendo un error en la función de carga, tengo otro archivo HTML de índice de archivos donde el usuario carga el archivo y

`#Error#: RuntimeError: Working outside of request context.

This typically means that you attempted to use functionality that needed
an active HTTP request.Consult the documentation on testing for
information about how to avoid this problem.[Finished in 0.6s]`
  

Este error está ocurriendo en línea en mi función de carga: Código:

`
@app.route("/")
@app.route("/upload", methods=["POST"])
def upload():
   return render_template('upload.html')

@app.route('/uploader', methods = ['GET', 'POST'])
def uploader():
   if request.method == 'POST':
      file1_path = os.path.join(app.config['UPLOAD'], secure_filename(FileIO.filename))
      f1 = request.files['file1']
      f1.save(file1_path)
      file2_path = os.path.join(app.config['UPLOAD'], secure_filename(FileIO.filename))
      f2 = request.files['file2']
      f2.save(file2_path)
      return file1_path, file2_path 
`

`
file1_path=uploader()
file2_path=uploader()
with open(file1_path, 'r') as file1:
   data = file1.read().replace('\n', '')
   str1=data.replace(' ', '')
with open(file2_path, 'r') as file2:
   data = file2.read().replace('\n', '')
   str2=data.replace(' ', '')
if(len(str1)>len(str2)):
   length=len(str1)
else:
   length=len(str2)
print(100-round((levenshtein(str1,str2)/length)*100,2),'% Similarity')
`
   
0
raman4899 29 may. 2021 a las 09:28

1 respuesta

La mejor respuesta

Su función uploader tiene el decotrador @route. Cuando este decorador se aplica a una función que la función esperará un objeto activo request cuando se le llame, lo que significa que si llama a esa función, debe ser una solicitud HTTP / HTTPS. Como lo está llamando desde su archivo .py y no crea ninguna solicitud mientras llama a la función, por lo tanto, fallará.

Puede probar manualmente su código sin ninguna solicitud activa. Para obtener más ayuda, consulte esta documentación de matraz para obtener más información sobre el contexto de solicitud y cómo puede lograr lo que desea. Solicitud de documentos de matraz

0
ClassY 29 may. 2021 a las 06:56