39 lines
1.1 KiB
JavaScript
39 lines
1.1 KiB
JavaScript
const sendBtn = document.getElementById("send-btn");
|
|
loadChat();
|
|
sendBtn.addEventListener("click", async () => {
|
|
|
|
const input = document.getElementById("user-input");
|
|
const text = input.value;
|
|
|
|
const messages = document.getElementById("messages");
|
|
|
|
messages.innerHTML += `<p><b>You:</b> ${text}</p>`; //=> получаем имя пользователя
|
|
|
|
const response = await fetch("/chat", {
|
|
method: "POST",
|
|
headers: {
|
|
"Content-Type": "application/json"
|
|
},
|
|
body: JSON.stringify({
|
|
message: text
|
|
})
|
|
});
|
|
|
|
const data = await response.json();
|
|
|
|
messages.innerHTML += `<p><b>AI:</b> ${data.response}</p>`;
|
|
|
|
input.value = "";
|
|
});
|
|
|
|
async function loadChat() {
|
|
|
|
const res = await fetch("/init");
|
|
const data = await res.json();
|
|
|
|
const messages = document.getElementById("messages");
|
|
|
|
data.messages.forEach(msg => {
|
|
messages.innerHTML += `<p><b>${msg.role}:</b> ${msg.content}</p>`; //добавить проверку role == user => получаем имя пользователя
|
|
});
|
|
} |