Пример #1
0
 def handle(self):
     start = time.clock()
     req = recv_all(socket=self.request)
     response = JSONRPCResponseManager(
         serialize_hook=json_datetime_default,
         deserialize_hook=json_datetime_hook).handle(req, dispatcher)
     send_all(socket=self.request, message=response.json)
     end = time.clock()
     if response.error is None:
         print('{}[{:2.4f}s]{} Method: {}{:16s}{} | Params: {}{}{}'.format(
             Colors.BLUE, end - start, Colors.ENDC, Colors.GREEN,
             response._request.method, Colors.ENDC, Colors.HEADER,
             response._request.params, Colors.ENDC))
     else:
         print('{}[{:2.4f}s]{} Error: {}{}{} | Request: {}{}{}'.format(
             Colors.BLUE, end - start, Colors.ENDC, Colors.FAIL,
             response.error['message'], response.error['code'], Colors.ENDC,
             Colors.HEADER, req, Colors.ENDC))
Пример #2
0
def application(request):
    handler = JSONRPCResponseManager()
    response = handler.handle(request_string=request.data,
                              dispatcher=dispatcher)
    return Response(response.json, mimetype='application/json')
Пример #3
0
# coding:utf-8
from werkzeug.wrappers import Request, Response
from werkzeug.serving import run_simple

from jsonrpc import JSONRPCResponseManager, dispatcher
from tf_inference import load_model, getPrediction, infer

IP = '166.111.80.171'  # 填写服务器的IP地址,crx的后端(background.js)需要进行相应修改
PORT = 4378

manager = JSONRPCResponseManager()
estimator, tokenizer = load_model()


def infer_sentence(sentence="123"):
    print(sentence)
    return infer([sentence], estimator, tokenizer)


dispatcher.add_method(infer_sentence, name='infer')


@Request.application
def application(request):
    response = manager.handle(request.get_data(cache=False, as_text=True),
                              dispatcher)
    res = Response(response.json, mimetype='application/x-www-form-urlencoded')
    res.headers['Access-Control-Allow-Origin'] = '*'

    return res