Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions app/api/core_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,11 @@ def set_general(ark_id):
def add_general(ark_id):
pid = None

if ark_id.startswith("0x"):
pid = dark_map.get_pid_by_hash(ark_id)
else:
pid = dark_map.get_pid_by_ark(ark_id)

if request.is_json:
data = request.get_json()
if len(data) == 0:
Expand All @@ -201,3 +206,4 @@ def add_general(ark_id):
return add_external_pid(ark_id, pid)

return make_response(error_response(action="add", error_message="Invalid or missing data in the request. Please check your input and try again.", error_code=400, pid=pid))

20 changes: 16 additions & 4 deletions app/api_server.py
Original file line number Diff line number Diff line change
@@ -1,35 +1,47 @@
import sys
import os

from flask import Flask, jsonify, render_template, send_file, abort
# from flask import render_template, request, Flask, g, send_from_directory, abort, jsonify
from instance_app import create_app
from api.query_api import queries_blueprint
from api.core_api import core_api_blueprint
from api.user_api import user_api_blueprint

from api.user_api import user_api_blueprint
from util.auth_middleware import authentication_middleware
from flask_swagger_ui import get_swaggerui_blueprint

app = create_app()

# basic config
app.config['JSON_AS_ASCII'] = False # utf8
app.config['JSON_SORT_KEYS'] = False # prevent sorting json

# swagger configs
SWAGGER_URL = '/swagger'
API_URL = '/static/swagger.json'
SWAGGER_BLUEPRINT = get_swaggerui_blueprint(
SWAGGER_URL,
API_URL,
config={
'app_name' : "hiperdrive API"
}
)

app.before_request(authentication_middleware)

# blueprint registry
app.register_blueprint(queries_blueprint)
app.register_blueprint(core_api_blueprint)
app.register_blueprint(user_api_blueprint)

app.register_blueprint(SWAGGER_BLUEPRINT, url_prefix = SWAGGER_URL)

@app.route('/')


def index():
return render_template('home.html')



if __name__ == "__main__":
# TODO: RECUPERAR A PORTA DO ENV
app.run(host='0.0.0.0', port=8080)
7 changes: 3 additions & 4 deletions app/instance_app.py
Original file line number Diff line number Diff line change
@@ -1,25 +1,24 @@
import os
from flask import Flask

from database.variables_database import ConfigVariables
from model import configure as config_db
from serealize import configure as config_ma

from flask_migrate import Migrate
from flask_jwt_extended import JWTManager


# TODO: Definir melhor
# PROJECT_ROOT = os.path.dirname(os.path.dirname(__file__))
PROJECT_ROOT = '.'

config_variables = ConfigVariables()


# templates
template_dir = os.path.join(PROJECT_ROOT, 'templates')


def create_app():

app = Flask(__name__, template_folder=template_dir)

app.config["SQLALCHEMY_DATABASE_URI"] = f"postgresql://{os.environ['DB_USER']}:{os.environ['DB_PASS']}@{os.environ['DB_HOST']}:{os.environ['DB_PORT']}/{os.environ['DB_NAME']}"
Expand All @@ -30,7 +29,7 @@ def create_app():
config_ma(app)

Migrate(app, app.db)

JWTManager(app)


return app
Loading