頁面或腳本或將托管在 IIS 上的任何內容,基本上應該接受來自超鏈接www.whatever.com?parametervalue=test的值,并提供檔案下載,例如名稱 myfile.file,包含值“test” .
引數值在 URL 中不應有字符限制,因為傳遞的值可能是一個非常長的字串,包含 4000 個或更多字符。
我不知道該怎么做。我可以使用什么技術來完成這項作業,也許是 html/javascript?我已經嘗試過 Google'ing,但想不出正確的單詞組合來確定我在尋找什么。
我怎樣才能完成這項作業?
uj5u.com熱心網友回復:
好的,所以我們有一些網頁。用戶單擊某個按鈕。然后該按鈕可以遛狗,做工資單,然后我們還想獲取一些 xml 檔案,并將其傳遞到下一頁,我們在其中提供了一個下載按鈕。
因此,似乎很少需要使用或擁有或想要甚至考慮在此處的 URL 中使用引數。除了嘗試在引數中傳遞 xml 字串之外,還會并且可能會引入各種問題和問題。
所以,在第一頁:
按鈕單擊(為什么有一些超鏈接????在這里零意義)。
如上所述,單擊按鈕可以做任何我們想做的事情,包括獲取和獲取 xml 檔案,當然我們還想提供并包含一個檔案名以供下載。
因此,在第一頁上,轉儲超鏈接的使用,并使用按鈕。
該按鈕將
獲取我們想要的xml資料,并保存到sesison中
session["XMLData"] = " my messy and ugly xml string/data here";
session["XMLFileName] = "ssrs.xml";
Response.Redirect("MyDownloadpage.aspx"); // jump to page with download button
現在,在目標頁面上,我們有那個下載按鈕。
然后該下載按鈕可以執行此操作:
public void DownLoadFile()
{
string strXMLData = Session["MyXMLData"] as string;
string strFile = Session["MyFile"] as string;
string MineType = MimeMapping.GetMimeMapping(strFile)
Response.Buffer = false;
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader("Accept-Header", strXMLData.Length.ToString());
Response.AddHeader("Content-Length", strXMLData.Length.ToString());
Response.AddHeader("Content-Disposition", "attachment; filename=" strFile);
Response.AddHeader("Expires", "0");
Response.AddHeader("Cache-Control", "private");
Response.ContentType = strMineType;
Response.AddHeader("Accept-Ranges", "bytes");
Response.Write(strXMLData);
Response.Flush();
Response.End();
}
因此,從帶有一些資訊和下載按鈕的頁面跳轉到您的頁面,您可以使用上面的代碼。
要傳遞 xml 資料和要使用的 xml 檔案名,您可以使用 session[] 如上所述。
編輯:獲取 url 引數
如注釋中所述,xml資料是在URL中傳遞的,所以現在上面的代碼變成了這樣:
string strXMLData = Request.QueryString["data"];
當然,您將“資料”替換為傳遞的引數值的名稱。
或者,只獲取第一個值,這樣說:
string strXMLData = Request.QueryString[0]; // manybe use 1 - depends on what url looks like
uj5u.com熱心網友回復:
如果我很好地理解了您的問題,您想建立鏈接,以便當有人訪問它時下載檔案。然后你可以創建 download.php 檔案并寫在那里
if ($_GET["parametervalue"] == "file1") {
echo "<script>(script to download your file)</script>";
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/487057.html
標籤:javascript html 网
