mirror of
https://gitee.com/dromara/electron-egg.git
synced 2026-05-14 11:52:07 +08:00
python flask fastapi demo
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -16,3 +16,6 @@ go/go.sum
|
|||||||
build/extraResources/java-app.jar
|
build/extraResources/java-app.jar
|
||||||
build/extraResources/jre1.8.0_201/
|
build/extraResources/jre1.8.0_201/
|
||||||
python/.venv/
|
python/.venv/
|
||||||
|
python/*.spec
|
||||||
|
python/build/
|
||||||
|
python/dist/
|
||||||
|
|||||||
@@ -35,21 +35,26 @@ module.exports = {
|
|||||||
cmd: 'npm',
|
cmd: 'npm',
|
||||||
args: ['run', 'build'],
|
args: ['run', 'build'],
|
||||||
},
|
},
|
||||||
go_build_w: {
|
go_w: {
|
||||||
directory: './go',
|
directory: './go',
|
||||||
cmd: 'go',
|
cmd: 'go',
|
||||||
args: ['build', '-o=../build/extraResources/goapp.exe'],
|
args: ['build', '-o=../build/extraResources/goapp.exe'],
|
||||||
},
|
},
|
||||||
go_build_m: {
|
go_m: {
|
||||||
directory: './go',
|
directory: './go',
|
||||||
cmd: 'go',
|
cmd: 'go',
|
||||||
args: ['build', '-o=../build/extraResources/goapp'],
|
args: ['build', '-o=../build/extraResources/goapp'],
|
||||||
},
|
},
|
||||||
go_build_l: {
|
go_l: {
|
||||||
directory: './go',
|
directory: './go',
|
||||||
cmd: 'go',
|
cmd: 'go',
|
||||||
args: ['build', '-o=../build/extraResources/goapp'],
|
args: ['build', '-o=../build/extraResources/goapp'],
|
||||||
}
|
},
|
||||||
|
python_w: {
|
||||||
|
directory: './python',
|
||||||
|
cmd: 'pyinstaller',
|
||||||
|
args: ['-n=pyapp', '-F', './main.py'],
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -76,7 +81,11 @@ module.exports = {
|
|||||||
go_images: {
|
go_images: {
|
||||||
dist: './public/images',
|
dist: './public/images',
|
||||||
target: './go/public/images'
|
target: './go/public/images'
|
||||||
}
|
},
|
||||||
|
python_dist: {
|
||||||
|
dist: './python/dist',
|
||||||
|
target: './build/extraResources/py'
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -129,7 +138,6 @@ module.exports = {
|
|||||||
directory: './python',
|
directory: './python',
|
||||||
cmd: 'python',
|
cmd: 'python',
|
||||||
args: ['./main.py', '--port=7074'],
|
args: ['./main.py', '--port=7074'],
|
||||||
stdio: 'ignore',
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@@ -119,7 +119,7 @@ module.exports = (appInfo) => {
|
|||||||
/**
|
/**
|
||||||
* Cross-language service
|
* Cross-language service
|
||||||
* 跨语言服务
|
* 跨语言服务
|
||||||
* 例如:执行go的二进制程序
|
* 例如:执行go的二进制程序,默认目录为 ./extraResources/
|
||||||
*/
|
*/
|
||||||
config.cross = {
|
config.cross = {
|
||||||
go: {
|
go: {
|
||||||
@@ -131,6 +131,8 @@ module.exports = (appInfo) => {
|
|||||||
python: {
|
python: {
|
||||||
enable: false,
|
enable: false,
|
||||||
name: 'pyapp',
|
name: 'pyapp',
|
||||||
|
cmd: './py/pyapp',
|
||||||
|
directory: './py',
|
||||||
args: ['--port=7074'],
|
args: ['--port=7074'],
|
||||||
appExit: true,
|
appExit: true,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -10,9 +10,10 @@
|
|||||||
"dev-go": "ee-bin dev --serve=go",
|
"dev-go": "ee-bin dev --serve=go",
|
||||||
"dev-python": "ee-bin exec --cmds=python",
|
"dev-python": "ee-bin exec --cmds=python",
|
||||||
"build-frontend": "ee-bin build --cmds=frontend && ee-bin move --flag=frontend_dist",
|
"build-frontend": "ee-bin build --cmds=frontend && ee-bin move --flag=frontend_dist",
|
||||||
"build-go-w": "ee-bin build --cmds=go_build_w",
|
"build-go-w": "ee-bin build --cmds=go_w",
|
||||||
"build-go-m": "ee-bin build --cmds=go_build_m",
|
"build-go-m": "ee-bin build --cmds=go_m",
|
||||||
"build-go-l": "ee-bin build --cmds=go_build_l",
|
"build-go-l": "ee-bin build --cmds=go_l",
|
||||||
|
"build-python-w": "ee-bin build --cmds=python_w && ee-bin move --flag=python_dist",
|
||||||
"start": "ee-bin start",
|
"start": "ee-bin start",
|
||||||
"move": "ee-bin move --flag=go_static,go_config,go_package,go_images",
|
"move": "ee-bin move --flag=go_static,go_config,go_package,go_images",
|
||||||
"rd": "ee-bin move --flag=frontend_dist",
|
"rd": "ee-bin move --flag=frontend_dist",
|
||||||
|
|||||||
29
python/flask.py
Normal file
29
python/flask.py
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
from flask import Flask, request, jsonify
|
||||||
|
import argparse
|
||||||
|
|
||||||
|
print("__name__: ", __name__)
|
||||||
|
|
||||||
|
# argparse
|
||||||
|
parser = argparse.ArgumentParser(description='Process some integers.')
|
||||||
|
parser.add_argument('--port', type=int, default=7074, help='The port number.')
|
||||||
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
app = Flask(__name__)
|
||||||
|
|
||||||
|
# 定义路由和处理器
|
||||||
|
@app.route('/', methods=['GET'])
|
||||||
|
def index():
|
||||||
|
name = request.args.get('name', 'World')
|
||||||
|
return jsonify({'message': f'Hello, {name}!'}), 200
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/hello', methods=['GET'])
|
||||||
|
def hello():
|
||||||
|
name = request.args.get('name', 'World')
|
||||||
|
return jsonify({'message': f'Hello, {name}!'}), 200
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
app.run(port=args.port)
|
||||||
|
|
||||||
|
# 控制台默认关闭输出信息,如果想要查看控制台输出,请单独启动服务 npm run dev-python
|
||||||
|
print("python server is running at port:", args.port)
|
||||||
@@ -11,19 +11,10 @@ args = parser.parse_args()
|
|||||||
|
|
||||||
@app.get("/")
|
@app.get("/")
|
||||||
async def index():
|
async def index():
|
||||||
"""
|
|
||||||
注册一个根路径
|
|
||||||
:return:
|
|
||||||
"""
|
|
||||||
return {"message": "Hello World"}
|
return {"message": "Hello World"}
|
||||||
|
|
||||||
|
@app.get("/hello")
|
||||||
@app.get("/info")
|
async def hello():
|
||||||
async def info():
|
|
||||||
"""
|
|
||||||
项目信息
|
|
||||||
:return:
|
|
||||||
"""
|
|
||||||
return {
|
return {
|
||||||
"app_name": "FastAPI框架学习",
|
"app_name": "FastAPI框架学习",
|
||||||
"app_version": "v0.0.1"
|
"app_version": "v0.0.1"
|
||||||
@@ -33,4 +24,4 @@ if __name__ == "__main__":
|
|||||||
uvicorn.run(app, host="127.0.0.1", port=args.port)
|
uvicorn.run(app, host="127.0.0.1", port=args.port)
|
||||||
|
|
||||||
# 控制台默认关闭输出信息,如果想要查看控制台输出,请单独启动服务 npm run dev-python
|
# 控制台默认关闭输出信息,如果想要查看控制台输出,请单独启动服务 npm run dev-python
|
||||||
print("Serving at port", args.port)
|
print("python server is running at port:", args.port)
|
||||||
Reference in New Issue
Block a user