def api_bin(name): try: bin = db.lookup_bin(name) except KeyError: return _response({'error': "Bin not found"}, 404) return _response(bin.to_dict())
def requests(bin): try: bin = db.lookup_bin(bin) except KeyError: return _response({'error': "Bin not found"}, 404) return _response([r.to_dict() for r in bin.requests])
def expand_recent_bins(): if 'recent' not in session: session['recent'] = [] recent = [] for name in session['recent']: try: recent.append(db.lookup_bin(name)) except KeyError: session['recent'].remove(name) session.modified = True return recent
def request_(bin, name): try: bin = db.lookup_bin(bin) except KeyError: return _response({'error': "Bin not found"}, 404) for req in bin.requests: if req.id == name: return _response(req.to_dict()) return _response({'error': "Request not found"}, 404)
def bin(name): try: bin = db.lookup_bin(name) except KeyError: return "Not found\n", 404 if request.args.get('inspect'): if bin.private and session.get(bin.name) != bin.secret_key: return "Private bin\n", 403 update_recent_bins(name) return render_template('bin.html', bin=bin, base_url=request.scheme + '://' + request.host) else: db.create_request(bin, request) resp = make_response("ok\n") resp.headers['Sponsored-By'] = "https://www.runscope.com" return resp