24 lines
753 B
Plaintext
24 lines
753 B
Plaintext
|
{{
|
||
|
###
|
||
|
# response._vars contains the dictionary returned by the controller action
|
||
|
###
|
||
|
|
||
|
# security check! This file is an example for a jsonp view.
|
||
|
# it is not safe to use as a generic.jsonp because of security implications.
|
||
|
|
||
|
if response.view == 'generic.jsonp':
|
||
|
raise HTTP(501,'generic.jsonp disabled for security reasons')
|
||
|
|
||
|
try:
|
||
|
from gluon.serializers import json
|
||
|
result = "%s(%s)" % (request.vars['callback'], json(response._vars))
|
||
|
response.write(result, escape=False)
|
||
|
response.headers['Content-Type'] = 'application/jsonp'
|
||
|
except (TypeError, ValueError):
|
||
|
raise HTTP(405, 'JSON serialization error')
|
||
|
except ImportError:
|
||
|
raise HTTP(405, 'JSON not available')
|
||
|
except:
|
||
|
raise HTTP(405, 'JSON error')
|
||
|
}}
|