Simplify wordCMD.py and rename it to api_service.py
parent
8f31b030ea
commit
ceb5f14ee9
|
@ -0,0 +1,31 @@
|
||||||
|
from flask import *
|
||||||
|
from flask_httpauth import HTTPTokenAuth
|
||||||
|
from Article import load_freq_history
|
||||||
|
|
||||||
|
path_prefix = '/var/www/wordfreq/wordfreq/'
|
||||||
|
path_prefix = './' # comment this line in deployment
|
||||||
|
|
||||||
|
show_bp = Blueprint('site',__name__)
|
||||||
|
|
||||||
|
auth = HTTPTokenAuth(scheme='Bearer')
|
||||||
|
|
||||||
|
tokens = {
|
||||||
|
"token": "token",
|
||||||
|
"secret-token": "lanhui" # token, username
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@auth.verify_token
|
||||||
|
def verify_token(token):
|
||||||
|
if token in tokens:
|
||||||
|
return tokens[token]
|
||||||
|
|
||||||
|
|
||||||
|
@show_bp.route('/api/mywords') # HTTPie usage: http -A bearer -a secret-token http://127.0.0.1:5000/api/mywords
|
||||||
|
@auth.login_required
|
||||||
|
def show():
|
||||||
|
username = auth.current_user()
|
||||||
|
word_freq_record = path_prefix + 'static/frequency/' + 'frequency_%s.pickle' % (username)
|
||||||
|
d = load_freq_history(word_freq_record)
|
||||||
|
return jsonify(d)
|
||||||
|
|
|
@ -10,9 +10,10 @@ import Yaml
|
||||||
from user_service import userService
|
from user_service import userService
|
||||||
from account_service import accountService
|
from account_service import accountService
|
||||||
from admin_service import adminService, ADMIN_NAME
|
from admin_service import adminService, ADMIN_NAME
|
||||||
|
from api_service import show_bp
|
||||||
import os
|
import os
|
||||||
from translate import *
|
from translate import *
|
||||||
from wordCMD import show_bp
|
|
||||||
|
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
app.secret_key = os.urandom(32)
|
app.secret_key = os.urandom(32)
|
||||||
|
|
|
@ -1,39 +0,0 @@
|
||||||
from flask import *
|
|
||||||
from flask_httpauth import HTTPTokenAuth
|
|
||||||
from Article import load_freq_history
|
|
||||||
from wordfreqCMD import sort_in_descending_order
|
|
||||||
import pickle_idea
|
|
||||||
|
|
||||||
auth = HTTPTokenAuth(scheme='Bearer')
|
|
||||||
|
|
||||||
path_prefix = '/var/www/wordfreq/wordfreq/'
|
|
||||||
path_prefix = './' # comment this line in deployment
|
|
||||||
|
|
||||||
show_bp = Blueprint(
|
|
||||||
'site',
|
|
||||||
__name__,
|
|
||||||
)
|
|
||||||
|
|
||||||
tokens = {
|
|
||||||
"token": "token"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@auth.verify_token
|
|
||||||
def verify_token(token):
|
|
||||||
if token in tokens:
|
|
||||||
return tokens[token]
|
|
||||||
|
|
||||||
|
|
||||||
@show_bp.route('/show/<name>/') # set route for show page <name> means the var name to search
|
|
||||||
@auth.login_required
|
|
||||||
def show(name):
|
|
||||||
user_freq_record = path_prefix + 'static/frequency/' + 'frequency_%s.pickle' % (name)
|
|
||||||
d = load_freq_history(user_freq_record)
|
|
||||||
freqlst = sort_in_descending_order(pickle_idea.dict2lst(d))
|
|
||||||
words_freq = [] # 存储单词表的数组,格式为 单词-词频
|
|
||||||
for i in range(len(freqlst)):
|
|
||||||
words_freq.append(str(freqlst[i][0]) + "-" + str(len(freqlst[i][1])))
|
|
||||||
t = {}
|
|
||||||
t[name] = words_freq
|
|
||||||
return jsonify(t)
|
|
Loading…
Reference in New Issue