From iali at an10.io Thu Dec 27 07:09:51 2018 From: iali at an10.io (Irtiza Ali) Date: Thu, 27 Dec 2018 17:09:51 +0500 Subject: [Flask] Flask server returns html response Message-ID: Hello everyone, I am a newbie in flask environment. I have built an api in flask, everything works fine but when I pass an invalid request it returns html response. Can some please guide me to return json responses instead of html ones. Thank you in advance. Regards Ali -------------- next part -------------- An HTML attachment was scrubbed... URL: From coreybrett at gmail.com Thu Dec 27 08:52:48 2018 From: coreybrett at gmail.com (Corey Boyle) Date: Thu, 27 Dec 2018 08:52:48 -0500 Subject: [Flask] Flask server returns html response In-Reply-To: References: Message-ID: Perhaps setup an error handler that would return JSON? @main.app_errorhandler(500) def internal_server_error(e): """Handel 500 errors.""" if (request.accept_mimetypes.accept_json and not request.accept_mimetypes.accept_html): response = jsonify({'error': 'internal server error'}) response.status_code = 500 return response return render_template('500.html'), 500 On Thu, Dec 27, 2018 at 7:10 AM Irtiza Ali wrote: > > Hello everyone, > > I am a newbie in flask environment. I have built an api in flask, everything works fine but when I pass an invalid request it returns html response. Can some please guide me to return json responses instead of html ones. Thank you in advance. > > > Regards > Ali > _______________________________________________ > Flask mailing list > Flask at python.org > https://mail.python.org/mailman/listinfo/flask -------------- next part -------------- An HTML attachment was scrubbed... URL: From iali at an10.io Fri Dec 28 02:28:33 2018 From: iali at an10.io (Irtiza Ali) Date: Fri, 28 Dec 2018 12:28:33 +0500 Subject: [Flask] Flask server returns html response In-Reply-To: References: Message-ID: Thanks you guys, I'll check it out. Regards Irtiza Ali On Thu, 27 Dec 2018, 18:53 Corey Boyle Perhaps setup an error handler that would return JSON? > > > @main.app_errorhandler(500) > def internal_server_error(e): > """Handel 500 errors.""" > if (request.accept_mimetypes.accept_json and not > request.accept_mimetypes.accept_html): > response = jsonify({'error': 'internal server error'}) > response.status_code = 500 > return response > return render_template('500.html'), 500 > > > > > > On Thu, Dec 27, 2018 at 7:10 AM Irtiza Ali wrote: > > > > Hello everyone, > > > > I am a newbie in flask environment. I have built an api in flask, > everything works fine but when I pass an invalid request it returns html > response. Can some please guide me to return json responses instead of > html ones. Thank you in advance. > > > > > > Regards > > Ali > > _______________________________________________ > > Flask mailing list > > Flask at python.org > > https://mail.python.org/mailman/listinfo/flask > -------------- next part -------------- An HTML attachment was scrubbed... URL: From stappers at stappers.nl Sat Dec 29 08:25:16 2018 From: stappers at stappers.nl (Geert Stappers) Date: Sat, 29 Dec 2018 14:25:16 +0100 Subject: [Flask] Flask server returns html response In-Reply-To: References: Message-ID: <20181229132516.kqfmu5aitnjkf2z4@gpm.stappers.nl> On Fri, Dec 28, 2018 at 12:28:33PM +0500, Irtiza Ali wrote: > On Thu, 27 Dec 2018, 18:53 Corey Boyle > On Thu, Dec 27, 2018 at 7:10 AM Irtiza Ali wrote: > > > > > > Hello everyone, > > > > > > I am a newbie in flask environment. I have built an api in flask, > > > everything works fine but when I pass an invalid request it returns > > > html response. Can some please guide me to return json responses > > > instead of html ones. Thank you in advance. > > > > Perhaps setup an error handler that would return JSON? > > > > > } @main.app_errorhandler(500) > } def internal_server_error(e): > } """Handel 500 errors.""" > } if (request.accept_mimetypes.accept_json and not request.accept_mimetypes.accept_html): > } response = jsonify({'error': 'internal server error'}) > } response.status_code = 500 > } return response > } return render_template('500.html'), 500 > > > > Thanks you guys, I'll check it out. > Please report back because the suggested source code got mengled in the email. I did try to format it again, but the double return seems strange. Groeten Geert Stappers -- Leven en laten leven