как непрерывно отправлять координаты мыши в колбу при взаимодействии пользователя с веб-приложением при помощи fetch-API? - PullRequest
0 голосов
/ 10 октября 2019

Я пытаюсь отправить позицию мыши пользователя, пока она перемещает курсор на веб-странице. Таким образом, приведенный ниже код по какой-то причине не посылает данные мыши непрерывно в колбу, а вместо этого ожидает до конца сеанса и отправляет все это после того, как пользователь нажал кнопку «отменить / сохранить». У меня нет слушателей на этих кнопках. Поэтому я не понимаю, почему код ожидает до конца, чтобы отправить данные. Чего мне здесь не хватает?

Так вот как выглядит мой app.py:

import json

from flask import Flask, url_for, render_template, request, redirect, make_response, jsonify

app = Flask(__name__,static_folder='static',
            template_folder='templates')


@app.route('/')
def index():
    return render_template('Introduction1.html')

@app.route('/test', methods=['GET','POST'])
def test():
    req=request.get_json()
    print (req)
    print()
    return render_template("Index.html")

@app.route('/danke')
def danke():
    return render_template("Thankyou.html")

if __name__ == '__main__':
    app.run()

Это курсор мыши в моем файле .js, включая код API выборки:

function showMovementCoords(event) {

     cdata = event.clientX.toString() + "_" + event.clientY.toString()
    fetch(`${window.origin}/test`, {
            method: "POST",
            credentials: "include",
            body: JSON.stringify(cdata),
            cache: "no-cache",
            headers:  new Headers({
                "content-type": "application/json"
            })
        })
}

Здесь мои кнопки сохранения / отмены, на всякий случай:

<div class="actions"> <a class="btn btn-default btn-cancel" href="{{ url_for( 'Thankyou' ) }}" id ="cancel"><i class="fa fa-arrow-left"></i> Cancel</a>
                       <a class="btn btn-default btn-save"   href="{{ url_for( 'Thankyou' ) }}" id ="save"><i class="fa fa-check"></i> Save</a>
</div>

быстрый обзор того, чего я хочу достичь: пользователь открывает страницу, делает вещи, каждый раз, когда он перемещает курсор,новая координата мыши отправлена ​​в колбу, и я ожидаю, что колба напечатает это. пользователь нажимает на сохранить / отменить. Откроется страница «Спасибо».

1 Ответ

0 голосов
/ 10 октября 2019

Установите прослушиватель событий Windows для мыши примерно так, используя таймер, такой как SetInterval, затем проверьте ту же позицию, чтобы он не отправлял ее дважды

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...