簡體   English   中英

無法使瀏覽器從python cgi腳本下載

[英]Trouble getting browser to download from python cgi script

我正在嘗試將.JSON下載到客戶端計算機以進行備份。 現在,我這樣做的方法是通過JQuery POST請求調用一個cgi腳本。 我遵循了此頁面底部的指南該指南涉及一個“文件下載...”框以及該問題已接受答案的信息。

目前,該腳本運行並正確返回了JSON,但是瀏覽器不會自動下載它,也不會像我期望的那樣引發“文件下載”框。

這是腳本的標題和打印語句:

print "Content-Type: application/octet-stream; name='testfile.json'"
print "Content-Disposition: attachment; filename='testfile.json'\n"
print json.dumps(configJSON)

我不確定是否格式化上述格式錯誤,還是不確定是否必須在請求中添加一些內容才能下載響應。 我的要求目前如下:

$.ajax({
    type: 'POST',
    url: 'cgi-bin/sendConfig.py',
})

就像我在上面說的,我可能會看到需要在請求中添加.done()函數,但是上面鏈接的文章的編寫方式似乎是Content-Type和Content-Disposition設置應該自動開始下載的

設計上的Javascript無法訪問文件系統,因此無法通過ajax啟動文件下載。

如果您直接使用瀏覽器訪問該URL(cgi-bin / sendConfig.py),則會顯示下載提示。

如果您需要通過javascript啟動此下載,則可以嘗試幾個選項。 您可以重定向到頁面:

window.location.href = "http://yoursite.com/cgi-bin/sendConfig.py";

或在頁面上添加看不見的iframe:

$('body').append('<iframe src="http://yoursite.com/cgi-bin/sendConfig.py" style="display:none;"></iframe>');

暫無
暫無

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

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