Das mit Flask angezeigte Bild ist falsch oder beschädigt
P粉299174094
P粉299174094 2023-09-12 00:21:51
0
1
564

Ich richte eine Webanwendung ein, in der ich einige Bilder anzeigen muss. Die Bilder, die ich von der API erhalte, konvertieren den Matplotlib-Plot in PNG und senden ihn dann mithilfe der io-Bibliothek an die Hauptwebanwendung. Daher erscheinen die Bilder, die ich auf der Seite anzeige, fast immer falsch oder falsch. Aber wenn ich sie über das Kontextmenü auf einer neuen Seite öffne, funktionieren sie einwandfrei.

Also dieser Code zum Senden von Bildern

@app.route('/send-data-a', methods=['GET']) def send_data_user_dynamic(): ...some code for diagram... image_stream1 = io.BytesIO() plt.savefig(image_stream1, format='png') image_stream1.seek(0) plt.close(fig) return send_file(image_stream1, mimetype='image/png')

Ich habe versucht, den Zeitstempel in die Haupt-App einzufügen, damit der Link eindeutig ist, aber das hat nicht geholfen

@app.route('/data', methods=['GET']) def data(): timestamp = int(time.time()) user_dynamic = requests.get(f'http://127.0.0.1:5000/send-data-a?timestamp={timestamp}') user_amount = requests.get(f'http://127.0.0.1:5000/send-data-b?timestamp={timestamp}') kp_month = requests.get(f'http://127.0.0.1:5000/send-data-c?timestamp={timestamp}') kp_week = requests.get(f'http://127.0.0.1:5000/send-data-d?timestamp={timestamp}') return render_template('second.html', user_dynamic=user_dynamic.url, user_amount=user_amount.url, kp_month=kp_month.url, kp_week=kp_week.url) if __name__ == '__main__': app.run(debug=True, port=5001)

Und es gibt eine HTML-Vorlage, um sie auszugeben

user_dynamic
some text

P粉299174094
P粉299174094

Antworte allen (1)
P粉701491897
import base64 user_dynamic_response = requests.get('http://127.0.0.1:5000/send-data-a') user_amount_response = requests.get('http://127.0.0.1:5000/send-data-b') kp_month_response = requests.get('http://127.0.0.1:5000/send-data-c') kp_week_response = requests.get('http://127.0.0.1:5000/send-data-d') user_dynamic_image_data = base64.b64encode(user_dynamic_response.content).decode('utf-8') user_amount_image_data = base64.b64encode(user_amount_response.content).decode('utf-8') kp_month_image_data = base64.b64encode(kp_month_response.content).decode('utf-8') kp_week_image_data = base64.b64encode(kp_week_response.content).decode('utf-8') return render_template('second.html', user_dynamic=user_dynamic_image_data, user_amount=user_amount_image_data, kp_month=kp_month_image_data, kp_week=kp_week_image_data)

所以呃这段代码解决了问题

    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!