Вот так примерно
html:
<div>
<button id="jsfetch">fetch json</button>
</div>
js:
document.querySelector("#jsfetch").addEventListener("click", Handler);
function Handler(event) {
fetch('/api')
.then((response) => {
return response.json();
})
.then((myjson) => {
console.log(myjson);
});
}
flask:
from flask import jsonify
data = {
"id": 123,
"name": "Вася",
"surname": "Пупкин"
}
@app.route('/api')
def api():
return jsonify(data)
Запускаешь, нажимаешь на кнопку и видишь в консоли браузера:
Object { id: 123, name: "Вася", surname: "Пупкин" }