我制作了一個 API,它向我發送了許多數據。其中之一是來自我的 MySQL 數據庫的 blob。我可以看到 blob 編碼為 base64,但我不能在 img 標簽中使用它來顯示我的圖像。我已經看過其他人的問題了。順便說一下,我認為 img 標簽是正確的。也許是 JSON 對我的數據做了一些事情......我來自 API 的數據array (size=2) 0 => object(stdClass)[1] public 'LId' => string '1' (length=1) public 'LNom' => string 'Visual Paradigm' (length=15) public 'IImage' => string '\/9j\/4AAQSkZJRgABAQAAAQABAAD'... (length=8455) 1 => object(stdClass)[2] public 'LId' => string '2' (length=1) public 'LNom' => string 'Visual Studio' (length=13) public 'IImage' => string '\/9j\/4AAQSkZJRgABAQEAYABgAAD'... (length=44843)API調用:$url = "localhost/projet/api/fake/getSoftwaresFAKE.php"; $data = CallAPI('GET', $url); $json = json_decode($data); echo '<img src="data:image/jpeg;base64,'.($json[1]->IImage).'"/>';接口代碼<?php// on se connecte à MySQL et on sélectionne la base$mysqli = new mysqli("192.168.1.23", "API", 'Pa$$w0rd', "AtoutProtectDB");if ($mysqli->connect_errno) { echo "Echec lors de la connexion à MySQL : (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;}// on crée la requête SQL $req = $mysqli->query('SELECT LId, LNom, IImage FROM Logiciels, Images WHERE Logiciels.IId = Images.IId'); $req->data_seek(0);while ($row = $req->fetch_assoc()) { $data [] = ['LId' => $row['LId'],'LNom' => $row['LNom'],'IId' => base64_encode($row['IImage'])];}echo json_encode($data);?>
2 回答

森欄
TA貢獻1810條經驗 獲得超5個贊
好的,我找到了問題所在。我在這個項目中為我的隊友制作了一個假的 php API。所以我在 VSCode 的一個變量中復制和過去了編碼為 base64 的數據。這是因為我的隊友可以使用來自 API 的正確數據格式測試他的網站,而無需在虛擬機上使用服務器,因為他的 PC 太弱而無法使用 VMWare...
我的問題就在這里。當我通過數據時,VSCode 在字符串的每個特殊字符后添加一個 '\' ......這可能是 VSCode 的 AddOn 做到的。
所以謝謝你并注意你在 VSCode 上的插件
- 2 回答
- 0 關注
- 420 瀏覽
添加回答
舉報
0/150
提交
取消