This commit is contained in:
2024-03-18 03:41:54 +03:00
parent 7aaa8f7573
commit ab33ba3763
18 changed files with 449 additions and 23 deletions

33
docs/source/backend/flask.py Executable file
View File

@@ -0,0 +1,33 @@
#!/usr/bin/env python3
from jsonrpc import JSONRPC
from jsonrpc.backend.flask import APIView
from flask import Flask
app = Flask(__name__)
jsonrpc = JSONRPC()
app.add_url_rule('/api', view_func=APIView.as_view('api', jsonrpc=jsonrpc))
@jsonrpc.method('boo')
def index() -> str:
return 'Welcome to JSON-RPC'
def link_page_tag(tag: int, page: int) -> str:
return f'tag: {tag}\npage: {page}'
jsonrpc['tag.page'] = link_page_tag
jsonrpc['page.tag'] = link_page_tag
def raise_error() -> bool:
raise ValueError("raise ValueError")
return True
jsonrpc['raise.error'] = raise_error
app.run(host='0.0.0.0', debug=True)

View File

@@ -0,0 +1,4 @@
Flask
=====
.. literalinclude:: flask.py

View File

@@ -0,0 +1,8 @@
Сервисы
=======
.. toctree::
:maxdepth: 2
:caption: Содержание:
flask

19
docs/source/usage.py Normal file
View File

@@ -0,0 +1,19 @@
from jsonrpc import JSONRPC
jsonrpc = JSONRPC()
@jsonrpc.method('app.endpoint')
def app_endpoint(a: int, b: int) -> int:
result = a + b
return result
request = {
"jsonrpc": "2.0",
"method": "app.endpoint",
"params": {"a": 1, "b": 2},
"id": "1"
}
response = jsonrpc(request)
print(response)