Redirecting to a url with POST data using Python Bottle

bottle, python, redirect

Solution

You may build the `response`, instead of using the `redirect(url)` method of bottle

from bottle import route, run, response

@post('/wrong')
def wrong():
  response.status = 303
  response.set_header('Location', '/hello')
  return '"key":"val"'  # Enter the body here

@route('/hello')
def hello():
  return "Hello World!"

run(host='0.0.0.0', port=8080, debug=True)

Problem

Is there any way of adding POST data when redirecting to another page? I've built a service that will redirect the user back to whatever page is specified when the service is called. The problem is I can't put any GET parameters on the url due to complex and badly written rewrite rules etc. so I need to send a value with POST. Is there anyway of adding to Bottles redirect(return_url) or using some other lib in Python?

Original source