import os import bjoern from flask import Flask from flask_restful import Api from resources.BinResources import BinResource from resources.BinV2Resource import BinV2Resource from resources.BinLikesResource import BinLikesResource from resources.BinViewsResource import BinViewsResource from tentalog import Tentacle from resources.StatsResource import StatsResource logger = Tentacle().logger __author__ = "@NextBlu core team" app = Flask(__name__) api = Api(app) @app.after_request def after_request(response): response.headers.add("Access-Control-Allow-Origin", "*") response.headers.add("Access-Control-Allow-Headers", "Content-Type, Authorization") response.headers.add("Access-Control-Allow-Methods", "GET,PUT,POST,DELETE,PATCH,OPTIONS") return response
# Copyright (c) 2020 NextBlu systems - - All Rights Reserved. # * MIT License # * Written by Mattia Failla <*****@*****.**>, May 2020 # """ import gzip import json import random import string from flask import request from flask_restful import Resource, original_flask_make_response from tentalog import Tentacle from modules.bin import Bin logger = Tentacle().logger class BinResource(Resource): def get(self, slug): logger.info(f"Requested Bin with slug {slug}") data = Bin().get_bin_legacy(slug) response_payload = {"success": True, "resource": data} # gzipping the data content = gzip.compress( json.dumps(response_payload, indent=4, sort_keys=True, default=str).encode('utf-8'), 9) response = original_flask_make_response(content) response.headers['Content-Encoding'] = 'gzip' return response