1
- 我有一個執行數據庫搜索的Web服務。它接受GET和POST請求,並且可以根據HTTP
Accept
標題以JSON,CSV或HTML格式返回數據。 - 我有一個網頁,向該Web服務發出Ajax請求,並顯示搜索結果。
- 我被要求在此頁面添加一個按鈕,以便用戶可以將數據保存爲CSV格式。
今年早些時候,有人在in the same boat,並得到了響應使用JavaScript的HTTP Accept Header
你不能用javascript 能力做到這一點,因爲JavaScript有沒有到客戶機上寫 許可, 相反,你可以發送請求服務器 創建csv文件並將其發送回 客戶端。
所以我加入這將打開一個新的瀏覽器選項卡中的HTML版本,一個按鈕,確實
window.open("MyWebService.cgi?" + theSameQueryStringIPassedInTheAjaxCall)
,
。我想要CSV版本。有沒有辦法通過Accept: text/csv
HTTP頭? (我知道怎麼用XMLHttpRequest和setRequestHeader來做,但這對我沒有幫助。)
將參數添加到查詢字符串不是更容易嗎? (例如format = csv) – davehauser 2010-09-01 19:43:53
我不想重新實現HTTP協議的一部分。但如果必須的話,我可以輕鬆做到這一點。 – dan04 2010-09-01 19:52:11