我正在嘗試使用 Python 和 Flask 在 HTML 表格中顯示影像,但仍然顯示“無法加載影像”圖示,當我嘗試在另一個選項卡中打開它時,我得到以下資訊:
“資料”鏈接被阻止
網頁位于 data:image/png;base64,b'\xfahg\xffZX\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[ Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\ xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff[Y\xff\\V\xe5YeoQ\x9a^P\xa3`P\...
可能暫時關閉或者它可能已永久移動到新的網址。
我的 HTML 模板中有以下內容:
<tr>
<td>{{ puzzle["Name"] }}</td>
<td>{{ puzzle["Type"] }}</td>
<td>{{ puzzle["AssetsSize"] }}</td>
<td>
<img src="data:image/png;base64,{{ convert_image(puzzle) }}">
</td>
</tr>
該convert_image()函式回傳以下內容:
def convert_image(data):
if 'Thumbnail' in data:
return data['Thumbnail'].encode("latin1")
return "Thumbnail Unavailable"
關于我做錯了什么的任何提示或想法?
在從函式回傳之前,我已經嘗試過使用 base64 進行編碼,但也沒有用。
uj5u.com熱心網友回復:
- 它應該被
base64編碼。 - 您
data不是 PNG 檔案。
一個 PNG 檔案以一個8 位元組的簽名開頭,看起來應該是這樣的:
>>> f = open("test.png", "rb")
>>> header = f.read(8)
>>> header
b'\x89PNG\r\n\x1a\n'
>>> header.hex(" ", 1)
'89 50 4e 47 0d 0a 1a 0a'
參考:
- 資料 URL
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/451313.html
