extra_api.py 671 B

12345678910111213141516171819202122232425262728
  1. from flask import Blueprint, abort, request, jsonify
  2. import lib
  3. extra = Blueprint("extra", __name__)
  4. @extra.route("score", methods=["POST"])
  5. def check_score():
  6. js = request.get_json()
  7. p1 = js.get("point1", None)
  8. p2 = js.get("point2", None)
  9. if p1 is None or p2 is None:
  10. abort(400)
  11. try:
  12. lat1 = float(p1.get("lat", None))
  13. lng1 = float(p1.get("lng", None))
  14. lat2 = float(p2.get("lat", None))
  15. lng2 = float(p2.get("lng", None))
  16. except ValueError:
  17. abort(400)
  18. score, distance = lib.score((lat1, lng1), (lat2, lng2))
  19. return jsonify({
  20. "score": score,
  21. "distance": distance,
  22. })