I'm not familiar with webapp2, but something like the following might work:
def test(var1=None):
return { var1: var1 }
def calltest():
d = test()
print(d['var1'])
def disp(router, request, response):
rv = router.default_dispatcher(request, response)
# turn dict into json and craft the response
return webapp2.Response(json.dumps(rv))
# alternatively, you could make your handlers return objects with a .json()
# method and call that
app = webapp2.WSGIApplication([
webapp2.Route(r'/test/<var1>', handler=test, methods="GET"),
])
app.router.set_dispatcher(disp)