Django Поддерживайте связь с маршрутом через отдельный фронтенд

Я работаю над чатботом и хочу развернуть его на Django, но я использую отдельный фронтенд. Я практически ничего не знаю о JavaScript и скопировал этот скрипт откуда-то:

onSendButton(chatbox) {
        var textField=chatbox.querySelector('input');
        let text1=textField.value
        if(text1==="") {
            return;
        }

        let msg1={name: "User", message: text1}
        this.messages.push(msg1);
        this.updateChatText(chatbox)
        textField.value=''
        fetch('http://localhost:8000/chat', {
            method: 'POST',
            body: JSON.stringify({message: text1}),
            mode: 'cors',
            headers: {
                'Content-Type': 'application/json'
            },
        })
            .then(r => r.json())
            .then(r => {
                console.log(r)
                let msg2={name: "CareAll", message: r.answer};
                this.messages.push(msg2);
                if("follow_up" in r) {
                    let msg3={name: "CareAll", message: r.follow_up};
                    this.messages.push(msg3)
                }
                this.updateChatText(chatbox)
                textField.value=''

            }).catch((error) => {
                console.error('Error:', error);
                this.updateChatText(chatbox)
                textField.value=''
            });
    } 

Эта функция предназначена для маршрута /chat

def chat_bot_response(request):
if request.method == "POST":
    u_msg = json.loads(request.body)["message"]
    ints = predict_class(u_msg, cb_model)
    resp = {"answer": getResponse(ints, intents)}
    maxConf = max(ints, key=lambda x: x["probability"])
    if maxConf["intent"] not in [
        "greeting",
        "farewell",
        "about_self",
        "about_self_function",
        "question",
        "unknown",
        "yes_to_symptom",
        "no_to_symptom",
    ]:
        RESP_LIST.append(resp["answer"])
        resp["answer"] = "Do You Have other symptoms?"
    if maxConf["intent"] == "yes_to_symptom":
        print(RESP_LIST)
    elif maxConf["intent"] == "no_to_symptom":
        resp["answer"] = RESP_LIST[0]
return JsonResponse(resp)

Что я пытаюсь сделать, я хочу оставаться в этой функции, когда чатбокс открыт, пока пользователь не покинет страницу. Нужно ли мне улучшить JavaScript? Использовать шаблон Django? Каково возможное решение.

Вернуться на верх