теперь я хочу использовать flask для ее упаковки, а затем могу посетить ее по http и json
Код: Выделить всё
lib= c.CDLL('comparedFace.dll')
CALLBACKFUNC = c.CFUNCTYPE(None, c.c_int, c.c_char_p)
lib.startComparedFace.restype = c.c_int
lib.startComparedFace.argtypes = (c.c_char_p, c.c_char_p, CALLBACKFUNC)
@app.route('/compare', methods=['GET', 'POST'])
def test():
if request.method == 'POST':
request_json = request.get_json()
print(request_json)
number = request_json.get('number')
image01 = request_json.get('image01')
image02 = request_json.get('image02')
print(image01)
print(image02)
@c.CFUNCTYPE(None, c.c_int, c.c_char_p)
@copy_current_request_context
def callback(status, result_string):
result_json = json.loads(result_string)
distance = result_json['compareResult']
resp_data = {
"number": number,
"distance": distance,
}
print(resp_data)
response = Response(
response=json.dumps(resp_data),
status=200,
mimetype='application/json'
)
return response
lib.startComparedFace(b'd:/1.jpg', b'd:/2.jpg', callback)
Я знаю, мне следует написать в качестве ответа возврат «xxx».
Но я хочу дождаться функции обратного вызова и вернуть ответ в функции обратного вызова, так как мне изменить свой код, спасибо.
Мобильная версия