[英]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.