簡體   English   中英

如何從本地 python 服務器加載圖像?

[英]How to load an image from local python server?

我正在嘗試學習如何使用服務器進行網站開發。 我對 Python 了解不多,但它似乎是最簡單的方法。 到目前為止,當我直接打開我的 index.html 文件時,我能夠加載我的圖像資源,但是當我通過本地 Python 服務器加載它時,只有純文本會加載到瀏覽器中。

我相信我已經編寫了正確的 HTML,因為當我直接從硬盤驅動器打開它時,它會正確加載。 我認為需要更新 Python 服務器代碼,以便它可以了解圖像文件的位置。 我當前的文件結構如下所示:

項目根
...資產
......字體
......圖片
.........模擬繪圖.png
...html
......索引.html
......服務器.py
...腳本

我在 html 文件夾中有 server.py ,因為我還沒有弄清楚如何讓它從腳本文件夾中工作。 當我從服務器加載 index.html 時,我從終端使用以下命令:

$ cd projectroot/html  
$ python3 server.py

然后我在瀏覽器中打開一個新選項卡並輸入:

localhost:8080

這是 server.py 文件中的代碼:

import http.server
import socketserver

PORT = 8080
Handler = http.server.SimpleHTTPRequestHandler

with socketserver.TCPServer(("", PORT), Handler) as httpd:
    print("serving at port", PORT)
    httpd.serve_forever()

這是 index.html 文件:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>TITLE</title>
</head>
<body>
    <h1>This is being received from a Python server</h1>
    <img src="../assets/images/mockDrawing.png" alt="Mock Drawing"/>
</body>
</html>

我希望加載圖像(這是我打算如何使網站最終看起來的圖),但到目前為止它僅在 Firefox 中顯示替代文本,並顯示“?” 在 Safari 中。 兩個控制台都說嘗試查找文件時出現 404 錯誤。

編輯:終端的輸出如下:

serving at port 8080
127.0.0.1 - - [14/Jul/2019 21:22:05] "GET / HTTP/1.1" 304 -
127.0.0.1 - - [14/Jul/2019 21:22:05] code 404, message File not found
127.0.0.1 - - [14/Jul/2019 21:22:05] "GET /assets/images/mockDrawing.png HTTP/1.1" 404 -

來自furas的評論是正確的。 您應該將圖像移動到啟動服務器的路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM