fs-walle-react-ts/walle_server.py

46 lines
1.3 KiB
Python
Raw Normal View History

2017-07-18 13:03:20 +00:00
from flask import Flask,send_from_directory,request
2017-07-12 06:40:24 +00:00
app = Flask(__name__,static_url_path='',static_folder='build')
2017-07-27 07:39:48 +00:00
from freespeech_walle.get_morph_rule import get_morph
2017-07-21 02:33:58 +00:00
# from freespeech_walle.wizard_helpers import get_morph_rule,get_frequency
2017-07-18 13:03:20 +00:00
import json
2017-07-28 13:27:40 +00:00
import codecs
# from flask_cors import CORS, cross_origin
# CORS(app)
2017-07-12 06:40:24 +00:00
@app.route('/')
def walle_index():
2017-07-12 06:40:24 +00:00
return app.send_static_file('index.html')
@app.route('/api/test')
def walle_test():
return "test"
2017-07-13 11:38:27 +00:00
@app.route('/api/morph')
2017-07-18 13:03:20 +00:00
def walle_morph():
word = request.args.get('word','water')
pos_req = request.args.get('pos','N')
pos = pos_req if pos_req != '' else 'N';
2017-07-27 07:39:48 +00:00
return json.dumps(get_morph(word,pos))
2017-07-18 13:03:20 +00:00
2017-07-28 06:56:45 +00:00
@app.route('/api/save',methods=['POST'])
def walle_save():
2017-07-28 13:27:40 +00:00
xmlData = request.form.get('file',None);
xmlFileName = request.form.get('name','new_es_saved.xml');
if xmlData:
with codecs.open('build/'+xmlFileName,'wb','utf-8') as xmlF:
xmlF.write(xmlData);
2017-07-28 06:56:45 +00:00
return 'ok'
2017-07-18 10:24:19 +00:00
# hmr streaming
2017-07-18 13:03:20 +00:00
# import requests
2017-07-18 10:24:19 +00:00
# from flask import Response,stream_with_context
# @app.route('/<path:url>',methods=['GET','POST'])
2017-07-18 10:24:19 +00:00
# def walle_hmr(url):
# webpack_server = 'http://localhost:3000/'
2017-07-18 10:24:19 +00:00
# req = requests.get(webpack_server+url, stream = True)
# return Response(stream_with_context(req.iter_content()))
2017-07-18 10:24:19 +00:00
2017-07-13 11:38:27 +00:00
if __name__ == '__main__':
app.run(debug=True)