def listen(): """"监听发送来的消息,并使用socketio向所有客户端发送消息""" mes = {"status": "unknown error"} text = request.form.get('data') alias = request.form.get('alias') file_obj = request.files.get('files') if file_obj: filename = file_obj.filename file_obj.save('static/files/' + filename) text = filename if text: _db = DBHelper() _from = request.headers.get('X-Real-Ip') or request.remote_addr _type = 'file' if file_obj else 'text' _id = _db.insert([alias, _from, _type, text]) data = _db.select_by_id(_id) data['alias'] = data['alias'] or data['id'] text = data['content'] data['content'] = text[:40].strip() + '...' if len( text) >= 40 else text socket_io.emit(data=json.dumps(data), event="mes") mes['status'] = "success" print(mes) return json.dumps(mes)
def operation(): """operation""" if request.method == 'GET': _id = request.args.get('id') if not _id: return {'msg': 'error'} _db = DBHelper() data = _db.select_by_id(_id) filename = data['content'] response = make_response( send_from_directory('static/files', filename, as_attachment=True)) response.headers[ "Content-Disposition"] = "attachment; filename={}".format( filename.encode().decode('latin-1')) return response elif request.method == 'POST': _id = request.form.get('id') if not _id: return {'msg': 'error'} _db = DBHelper() data = _db.select_by_id(_id) return json.dumps({'text': data['content']})