fix sync webexporter

This commit is contained in:
Ivan Vazhenin
2023-09-24 16:21:34 +03:00
parent 87cb86a7f9
commit 84d421c5f0
2 changed files with 42 additions and 10 deletions

32
main.py
View File

@@ -25,7 +25,7 @@ from zip import Zip
import boto3
import db
from sqlalchemy.orm import Session
from fastapi import FastAPI, Response, Form, UploadFile, File
from fastapi import FastAPI, Response, Form, UploadFile, File, Request
import uvicorn
from typing import Annotated
@@ -438,11 +438,31 @@ async def fa_root():
return {"message": "Hello World"}
@app.post("/login")
async def fa_login(response: Response):
@app.get("/login")
async def fa_login_get(response: Response):
response.set_cookie(key='sessionid', value='87654321')
response.set_cookie(key='csrftoken', value='12345678')
return {"login": "Ok"}
return {"login": "Ok", "success": True}
@app.post("/login")
async def fa_login(response: Response):
logger.warning('login action')
response.set_cookie(key='sessionid', value='87654321')
response.set_cookie(key='csrftoken', value='12345678')
return {"login": "Ok", "success": True}
@app.post('/webapi')
async def fa_webapi(request: Request):
body = await request.body()
logger.warning('webapi')
if 'has_perm' in body.decode('utf-8'):
return Response(content='<?xml version="1.0"?><methodResponse><params><param><value><struct><member><name>success</name><value><boolean>1</boolean></value></member></struct></value></param></params></methodResponse>',
media_type='application/xml')
else:
return Response(content='<?xml version="1.0"?><methodResponse><params><param><value><boolean>1</boolean></value></param></params></methodResponse>',
media_type='application/xml')
@app.post("/api/easo/PutObject")
@@ -451,7 +471,7 @@ async def fa_put_object(response: Response,
object_file: Annotated[UploadFile, File()]
):
date = datetime.datetime.now()
files = [{'name': object_file.filename, 'url': object_file.file.name, 'size': os.path.getsize(object_file.size)}]
files = [{'name': object_file.filename, 'url': object_file.file.name, 'size': object_file.size}]
request_params = {
'from': '',
'to': '',
@@ -483,7 +503,7 @@ def main():
try:
logger.warning('Start server')
uvicorn.run(app, host="0.0.0.0", port=9001)
uvicorn.run(app, host="0.0.0.0", port=80)
except KeyboardInterrupt:
logger.warning('Exiting')

View File

@@ -1,5 +1,7 @@
aiohttp==3.8.4
aiosignal==1.3.1
annotated-types==0.5.0
anyio==3.7.1
async-timeout==4.0.3
attrs==23.1.0
backoff==2.2.1
@@ -7,22 +9,32 @@ boto3==1.28.37
botocore==1.31.40
certifi==2023.7.22
charset-normalizer==3.2.0
click==8.1.7
fastapi==0.103.1
frozenlist==1.4.0
gql==3.5.0b5
graphql-core==3.3.0a3
greenlet==2.0.2
h11==0.14.0
idna==3.4
infra @ file:///home/ashatora/PycharmProjects/xmlrpcserver/deps/infra-0.2-py3-none-any.whl#sha256=b4dae258fa13c1f60ea1fdf70466c7a374529cf4cdfdef76579a2a0f8022e2a3
jmespath==1.0.1
multidict==6.0.4
pika==1.3.2
pika-stubs==0.1.3
psycopg==3.1.10
pydantic==2.3.0
pydantic_core==2.6.3
pygost==5.12
python-dateutil==2.8.2
python-multipart==0.0.6
requests==2.31.0
s3transfer==0.6.2
six==1.16.0
sniffio==1.3.0
SQLAlchemy==2.0.20
starlette==0.27.0
typing_extensions==4.7.1
urllib3==2.0.4
uvicorn==0.23.2
yarl==1.9.2
SQLAlchemy~=2.0.20
fastapi=~0.103.1
uvicorn=~0.23.2
python-multipart=~0.0.6