Skip to content

Commit 9fae902

Browse files
authored
Update script.js
1 parent ab4faf1 commit 9fae902

File tree

1 file changed

+20
-18
lines changed

1 file changed

+20
-18
lines changed

script.js

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,42 +10,44 @@ form.addEventListener("submit", async (e) => {
1010
appendMessage("user", message);
1111
input.value = "";
1212

13-
const messageContainer = appendMessage("assistant", ""); // placeholder voor stream
14-
13+
const agentMsg = appendMessage("assistant", "..."); // tijdelijk placeholder
1514
try {
1615
const response = await fetch("https://chatproxy.azurewebsites.net/api/chatproxy", {
1716
method: "POST",
1817
headers: { "Content-Type": "application/json" },
19-
body: JSON.stringify({ message }),
18+
body: JSON.stringify({ message })
2019
});
2120

2221
if (!response.ok || !response.body) {
23-
const errorText = await response.text();
24-
console.error("Responsetekst:", errorText);
25-
throw new Error(`Serverfout: ${response.status}`);
22+
agentMsg.textContent = "Er ging iets mis met het ophalen van het antwoord.";
23+
return;
2624
}
2725

2826
const reader = response.body.getReader();
2927
const decoder = new TextDecoder("utf-8");
30-
let result = "";
31-
32-
while (true) {
33-
const { done, value } = await reader.read();
34-
if (done) break;
35-
result += decoder.decode(value, { stream: true });
36-
messageContainer.innerHTML = result;
37-
chat.scrollTop = chat.scrollHeight;
28+
let done = false;
29+
let finalText = "";
30+
31+
while (!done) {
32+
const { value, done: readerDone } = await reader.read();
33+
done = readerDone;
34+
if (value) {
35+
const chunk = decoder.decode(value, { stream: true });
36+
finalText += chunk;
37+
agentMsg.textContent = finalText;
38+
chat.scrollTop = chat.scrollHeight;
39+
}
3840
}
3941
} catch (err) {
40-
messageContainer.innerHTML = "Er ging iets mis.";
42+
agentMsg.textContent = "Er ging iets mis.";
4143
console.error("Fout in fetch:", err);
4244
}
4345
});
4446

45-
function appendMessage(role, text) {
47+
function appendMessage(sender, text) {
4648
const msg = document.createElement("div");
47-
msg.className = "message " + (role === "user" ? "user-message" : "agent-message");
48-
msg.innerHTML = text;
49+
msg.className = `message ${sender}-message`;
50+
msg.textContent = text;
4951
chat.appendChild(msg);
5052
chat.scrollTop = chat.scrollHeight;
5153
return msg;

0 commit comments

Comments
 (0)