В вашем коде несколько проблем. Сначала вы должны собрать все файлы, а затем вернуть шаблон, но теперь ваш код возвращается после прочтения первого изображения:
app.py
@app.route("/api/images")
def get_images():
directory = os.listdir('C:/Users/HP/Miniconda3/envs/count_vechicle/coding/images')
os.chdir('C:/Users/HP/Miniconda3/envs/count_vechicle/coding/images')
flist = list()
for file in directory:
data = dict()
base = os.path.basename(file)
data["label"] = base
open_file = open(file,'rb')
image_read = open_file.read()
image_64_encode = base64.encodebytes(image_read)
data["data"] = image_64_encode.decode('ascii')
flist.append(data)
final_data = json.dumps({'files':flist}, sort_keys=True, indent=4, separators=(',', ': '))
return render_template("images.html", final_data=final_data)
Когда вы Встраивая base64image в источник тега image в шаблоне html, вы должны отметить, что это base64image. Например, для изображений в формате JPEG вы можете использовать:
Изображения. html
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<h1 class="logo">Results</h1>
<ul>
{% for data in final_data.files %}
<li>{{data.label}}</li>
<li><img alt="embedded" src="data:image/jpg;base64,{{data.data}}"/></li>
{% endfor %}
</ul>
</body>
</html>