2014-07-14 24 views
0

我做了this simple HTTP server in PythonPython的Web服務器和文件下載

import SimpleHTTPServer 
import SocketServer 

PORT = 8000 

Handler = SimpleHTTPServer.SimpleHTTPRequestHandler 

httpd = SocketServer.TCPServer(("", PORT), Handler) 

print "serving at port", PORT 
httpd.serve_forever() 

我想現在要做的,但我不知道怎麼了,是這樣的:

當我訪問http://localhost:8000/my/path/download?documentID=100,文檔(特別是PDF文件)將自動開始下載。當然,我有更多的文件,但我希望他們能夠通過獲得參數documentID

實現此目的的最簡單方法是什麼?謝謝

回答

0

你必須寫一個新的句柄。 http://fragments.turtlemeat.com/pythonwebserver.php顯示了一個簡單的例子。

你必須:

  • 確定的PDF文件了ID的
  • 閱讀PDF文件
  • 發送正確的內容,標誌
  • 發送PDF文件

替代:

  • 寫一個腳本保存PDF文件與像次數1.pdf的ID,2.pdf
  • 使用示例代碼
  • ,使用簡單鏈接一樣http://localhost:8000/my/path/1.pdf

迎接Kuishi

PS:英語是不是我的母語,對不起

+0

是的,這是一個很好的使我自己的處理程序。但是從我迄今爲止一直在尋找的東西看來,分道揚seems似乎是找出我的參數的唯一途徑。也許我錯了 –

+0

交替不是英國。我想開始下載文件,而不是在瀏覽器中打開它 –

+0

在瀏覽器中打開或下載是客戶端(瀏覽器)的決定。有技術來強制下載,但我認爲其不好的設計來強制下載。用戶仍然可以右鍵單擊並「另存爲...」。 BTW。林不知道這個python簡單的http服務器是如何安全的生產使用。 – Kuishi