Я довольно новичок в Flask и d3, но испытываю некоторые трудности с загрузкой json из API в функции d3 с использованием d3.json
Я широко пытаюсь выполнить следующие шаги для API, к которому у меня есть доступ:
https://realpython.com/web-development-with-flask-fetching-data-with-requests/
вот мой run.py
файл:
from flask import Flask, render_template, jsonify
from harvest_scraper import api_scraper
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
@app.route('/data')
def data():
return jsonify(api_scraper())
Я могу подтвердить, что при запуске приложения и переходе к конечной точке /data
я получаю действительный json и данные, которые я хочу использовать в моей визуализации d3.
Правильно ли я считаю, что затем могу использовать эту конечную точку в качестве URL-адреса для загрузки json в любые сценарии d3 на страницах шаблонов?
Вот шаблон index.html
, который у меня есть на данный момент:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>d3 api example</title>
<script src="https://d3js.org/d3.v5.min.js"></script>
</head>
<body>
<script>
d3.json('/data', function(data) {
console.log(data);
});
</script>
</body>
</html>
Я ожидаю, что моя страница /
сделает запрос на страницу /data
и console.log
json из вызова API.
В настоящий момент я не вижу ничего на странице /
и не могу использовать эти данные в любых сценариях d3 в шаблоне index.html
. Я также не вижу никаких ошибок, которые я вижу.
Мне кажется, что я либо не понимаю формат возвращаемого json, либо способ доступа к данным из конечной точки.