Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python Flask Intentional Empty Response

Is there a way to return a response (from make_response() object or similar) with certain properties so that it doesn't render the page again and doesn't do anything else either. I am trying to run a code on the server without generating any output

A simple 'return None' produces:

ValueError: View function did not return a response 

This should be possible because the following only downloads a file and doesn't render the template:

myString = "First line of a document" response = make_response(myString) response.headers["Content-Disposition"] = "attachment; filename=myFile.txt" return response 
like image 547
RukTech Avatar asked Jun 18 '14 21:06

RukTech


People also ask

What is Make_response Flask?

make_response is a function in the flask. helpers module of the Flask web framework. make_response is for adding additional HTTP headers to a response within a view's code.


1 Answers

You are responding to a request, your HTTP server must return something. The HTTP 'empty response' response is 204 No Content:

return ('', 204) 

Note that returning a file to the browser is not an empty response, just different from a HTML response.

like image 170
Martijn Pieters Avatar answered Sep 21 '22 08:09

Martijn Pieters