web服务器下载(如何在IIS web服务器上设置一个 文件下载链接)

本文目录
- 如何在IIS web服务器上设置一个 文件下载链接
- vb编写的web服务器,怎样用来下载mp3等文件
- 如何通过Web Services上传和下载文件
- http和https如何下载
- 从web服务器上下载文件是如何实现的
- c# web 想实现将服务器上的文档链接地址发给我的用户,用户使用这个链接再下载文档链接如何实现
- 洋葱服务器怎么下载
如何在IIS web服务器上设置一个 文件下载链接
在iis上加一个那个文件类型的mime就行了,一般设定为application/octet-stream ,具体操作跟你的iis版本有关,自己搜索下。
vb编写的web服务器,怎样用来下载mp3等文件
下载东西时要通过web服务器下载地址栏里指定地址的文件
***隐藏网址***
这里有篇简单的内容供你参考...
***隐藏网址***
如果你想自己写个程序相互传文件比较简单,如果你想让你的程序支持浏览器的下载,就比较复杂了,呵呵
如何通过Web Services上传和下载文件
随着Internet技术的发展和跨平台需求的日益增加 Web Services的应用越来越广 我们不但需要通过Web Services传递字符串信息 而且需要传递二进制文件信息 下面 我们就分别介绍如何通过Web Services从服务器下载文件到客户端和从客户端通过Web Services上载文件到服务器
一 通过Web Services显示和下载文件
我们这里建立的Web Services的名称为GetBinaryFile 提供两个公共方法 分别是GetImage()和GetImageType() 前者返回二进制文件字节数组 后者返回文件类型 其中 GetImage()方法有一个参数 用来在客户端选择要显示或下载的文件名字 这里我们所显示和下载的文件可以不在虚拟目录下 采用这个方法的好处是 可以根据权限对文件进行显示和下载控制 从下面的方法我们可以看出 实际的文件位置并没有在虚拟目录下 因此可以更好地对文件进行权限控制 这在对安全性有比较高的情况下特别有用 这个功能在以前的ASP程序中可以用Stream对象实现 为了方便读者进行测试 这里列出了全部的源代码 并在源代码里进行介绍和注释
首先 建立GetBinaryFile a *** x文件
我们可以在VS NET里新建一个C#的aspxWebCS工程 然后 添加新项 选择 Web服务 并设定文件名为 GetBinaryFile a *** x 在 查看代码 中输入以下代码 即 GetBinaryFile a *** x cs
using System;
using System Collections;
using System ComponentModel;
using System Data;
using System Diagnostics;
using System Web;
using System Web UI;
using System Web Services;
using System IO;
namespace aspxWebCS
{
///
/// GetBinaryFile 的摘要说明
/// Web Services名称 GetBinaryFile
/// 功能 返回服务器上的一个文件对象的二进制字节数组
///
[WebService(Namespace=
Description= 在Web Services里利用 NET框架进行传递二进制文件 )]
public class GetBinaryFile : System Web Services WebService
{
#region Component Designer generated code
//Web 服务设计器所必需的
private IContainer ponents = null;
///
/// 清理所有正在使用的资源
///
protected override void Dispose( bool disposing )
{
if(disposing &&ponents != null)
{
ponents Dispose();
}
base Dispose(disposing);
}
#endregion
public class Images: System Web Services WebService
{
///
/// Web 服务提供的方法 返回给定文件的字节数组
///
public byte GetImage(string requestFileName)
{
///得到服务器端的一个图片
///如果你自己测试 注意修改下面的实际物理路径
if(requestFileName == null || requestFileName == )
return getBinaryFile( D:\Picture JPG );
else
return getBinaryFile( D:\ + requestFileName);
}
///
/// getBinaryFile 返回所给文件路径的字节数组
///
///
public byte getBinaryFile(string filename)
{
if(File Exists(filename))
{
try
{
///打开现有文件以进行读取
FileStream s = File OpenRead(filename);
return ConvertStreamToByteBuffer(s);
}
catch(Exception e)
{
return new byte;
}
}
else
{
return new byte;
}
}
///
/// ConvertStreamToByteBuffer 把给定的文件流转换为二进制字节数组
///
///
public byte ConvertStreamToByteBuffer(System IO Stream theStream)
{
int b ;
System IO MemoryStream tempStream = new System IO MemoryStream();
while((b =theStream ReadByte())!= )
{
tempStream WriteByte(((byte)b ));
}
return tempStream ToArray();
}
public string GetImageType()
{
///这里只是测试 您可以根据实际的文件类型进行动态输出
return image/jpg ;
}
}
}
}
观看地址 进入讨论组讨论
一旦我们创建了上面的a *** x文件 进行编译后 我们就可以编写客户端的代码来进行调用这个Web Services了
我们先 添加Web引用 输入 下面 我们编写显示文件的中间文件 GetBinaryFileShow aspx 这里 我们只需要在后代码里编写代码即可 GetBinaryFileShow aspx cs文件内容如下
using System;
using System Collections;
using System ComponentModel;
using System Data;
using System Drawing;
using System Web;
using System Web SessionState;
using System Web UI;
using System Web UI WebControls;
using System Web UI HtmlControls;
using System Web Services;
namespace aspxWebCS
{
///
/// GetBinaryFileShow 的摘要说明
///
public class GetBinaryFileShow : System Web UI Page
{
private void Page_Load(object sender System EventArgs e)
{
// 在此处放置用户代码以初始化页面
///定义并初始化文件对象
aspxWebCS GetBinaryFile Images oImage;
oImage = new aspxWebCS GetBinaryFile Images();
///得到二进制文件字节数组
byte image = oImage GetImage( );
///转换为支持存储区为内存的流
System IO MemoryStream memStream = new System IO MemoryStream(image);
///定义并实例化Bitmap对象
Bitmap bm = new Bitmap(memStream);
///根据不同的条件进行输出或者下载
Response Clear();
///如果请求字符串指定下载 就下载该文件
///否则 就显示在浏览器中
if(Request QueryString== )
{
Response Buffer = true;
Response ContentType = application/octet stream ;
///这里下载输出的文件名字 ok jpg 为例子 你实际中可以根据情况动态决定
Response AddHeader( Content Disposition attachment;filename=ok jpg );
}
else
Response ContentType = oImage GetImageType();
Response BinaryWrite(image);
Response End();
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN 该调用是 ASP NEeb 窗体设计器所必需的
//
InitializeComponent();
base OnInit(e);
}
///
/// 设计器支持所需的方法 不要使用代码器修改
/// 此方法的内容
///
private void InitializeComponent()
{
this Load += new System EventHandler(this Page_Load);
}
#endregion
}
}
最后 我们就编写最终的浏览页面 GetBinaryFile aspx 这个文件很简单 只需要aspx文件即可 内容如下
《%@ Page language="c#" Codebehind="GetBinaryFile.aspx.cs" AutoEventWireup="false"
Inherits="aspxWebCS.GetBinaryFile" %》 Inherits= aspxWebCS GetBinaryFile %》
runat= server 》 runat= server 》下载文件
收藏地址:进入讨论组讨论
using System;
using System Collections;
using System ComponentModel;
using System Data;
using System Diagnostics;
using System Web;
using System Web Services;
using System IO;
namespace aspxWebCS
{
///
/// Upload 的摘要说明
///
[WebService(Namespace=
Description= 在Web Services里利用 NET框架进上载文件 )]
public class Upload : System Web Services WebService
{
public Upload()
{
//CODEGEN 该调用是 ASP NEeb 服务设计器所必需的
InitializeComponent();
}
#region Component Designer generated code
//Web 服务设计器所必需的
private IContainer ponents = null;
///
/// 设计器支持所需的方法 不要使用代码器修改
/// 此方法的内容
///
private void InitializeComponent()
{
}
///
/// 清理所有正在使用的资源
///
protected override void Dispose( bool disposing )
{
if(disposing &&ponents != null)
{
ponents Dispose();
}
base Dispose(disposing);
}
#endregion
public string UploadFile(byte fs string FileName)
{
try
{
///定义并实例化一个内存流 以存放提交上来的字节数组
MemoryStream m = new MemoryStream(fs);
///定义实际文件对象 保存上载的文件
FileStream f = new FileStream(Server MapPath( ) + \
+ FileName FileMode Create);
///把内内存里的数据写入物理文件
m WriteTo(f);
m Close();
f Close();
f = null;
m = null;
return 文件已经上传成功 ;
}
catch(Exception ex)
{
return ex Message;
}
}
}
}
using System;
using System Collections;
using System ComponentModel;
using System Data;
using System Drawing;
using System Web;
using System Web SessionState;
using System Web UI;
using System Web UI WebControls;
using System Web UI HtmlControls;
using System Web Services;
using System IO;
namespace aspxWebCS
{
///
/// Upload 的摘要说明
/// 利用该方法通过Web Services上载文件
///
public class Upload : System Web UI Page
{
protected System Web UI HtmlControls HtmlInputFile MyFile;
protected System Web UI WebControls Button Button ;
private void Page_Load(object sender System EventArgs e)
{
// 在此处放置用户代码以初始化页面
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN 该调用是 ASP NEeb 窗体设计器所必需的
//
InitializeComponent();
base OnInit(e);
}
///
/// 设计器支持所需的方法 不要使用代码器修改
/// 此方法的内容
///
private void InitializeComponent()
{
this Button Click += new System EventHandler(this Button _Click);
this Load += new System EventHandler(this Page_Load);
}
#endregion
private void Button _Click(object sender System EventArgs e)
{
///首先得到上载文件信息和文件流
if(MyFile PostedFile != null)
{
System Web HttpFileCollection oFiles;
oFiles = System Web HttpContext Current Request Files;
if(oFiles Count 《 )
{
Response Write ( 请选择文件 );
Response End();
}
string FilePath = oFiles FileName;
if(FilePath == || FilePath == null)
{
Response Write ( 请选择一个文件 );
Response End();
}
string FileName = FilePath Substring(FilePath LastIndexOf( \ )+ );
try
{
///处理上载的文件流信息
byte;
System IO Stream fs;
aspxWebCS Upload o;
o = new aspxWebCS Upload();
fs = (System IO Stream)oFiles InputStream;
fs Read(b oFiles ContentLength);
///调用Web Services的UploadFile方法进行上载文件
Response Write(o UploadFile(b FileName));
fs Close();
}
catch(Exception ex)
{
Response Write(ex Message);
}
}
else
{
Response Write( 请选择文件 );
}
}
}
}
最后 需要注意的是 在保存文件时 您应该确保指定文件的完整路径(例如 C:MyFilesPicture jpg ) 并确保为 ASP NET使用的帐户提供要存储文件的目录的写权限 上载大文件时 可使用 元素的 maxRequestLength 属性来增加文件大小的最大允许值 其中 maxRequestLength 指示 ASP NET 支持的HTTP方式上载的最大字节数 该限制可用于防止因用户将大量文件传递到该服务器而导致的拒绝服务攻击 指定的大小以 KB 为单位 默认值为 KB ( MB) executionTimeout 指示在被 ASP NET 自动关闭前 允许执行请求的最大秒数 在当文件超出指定的大小时 如果浏览器中会产生 DNS错误或者出现服务不可得到的情况 也请修改以上的配置 把配置数加大
另外 上载大文件时 还可能会收到以下错误信息
aspnet_wp exe (PID: ) 被回收 因为内存消耗超过了 MB(可用 RAM 的百分之 )
如果遇到此错误信息 请增加应用程序的 nfig 文件的 元素中 memoryLimit 属性的值
lishixinzhi/Article/program/net/201311/12410http和https如何下载
可以直接在浏览器里贴地址进行下载。
***隐藏网址***
可以直接在浏览器里贴地址进行下载。如果是流地址,大部分浏览器会直接提示下载,若不是可右击选择另存为进行下载。
设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。目前的应用主要除了HTML网页外还被用来传输超文本数据例如:图片、音频文件(MP3等)、视频文件(rm、avi等)、压缩包(zip、rar等),基本上只要是文件数据均可以利用HTTP进行传输。
HTTP请求/响应的步骤
1、客户端连接到Web服务器:一个HTTP客户端,通常是浏览器,与Web服务器的HTTP端口(默认为80)建立一个TCP套接字连接。
2、发送HTTP请求:通过TCP套接字,客户端向Web服务器发送一个文本的请求报文,一个请求报文由请求行、请求头部、空行和请求数据4部分组成。
3、服务器接受请求并返回HTTP响应:Web服务器解析请求,定位请求资源。服务器将资源复本写到TCP套接字,由客户端读取。一个响应由状态行、响应头部、空行和响应数据4部分组成。
4、释放连接TCP连接:若connection模式为close,则服务器主动关闭TCP连接,客户端被动关闭连接,释放TCP连接;若connection模式为keepalive,则该连接会保持一段时间,在该时间内可以继续接收请求。
5、客户端浏览器解析HTML内容:客户端浏览器首先解析状态行,查看表明请求是否成功的状态代码。然后解析每一个响应头,响应头告知以下为若干字节的HTML文档和文档的字符集。客户端浏览器读取响应数据HTML,根据HTML的语法对其进行格式化,并在浏览器窗口中显示。
从web服务器上下载文件是如何实现的
/**
* 根据文件输入流,和文件名称下载文件
* @param respHttpServletResponse
* @param file供下载的文件
* @param file_name所显示的下载文件名称
*/
public void FileDownLoad(HttpServletResponse resp ,File file, String file_name) {
try {
String fileName = new String(file_name.getBytes("GBK"), "ISO8859_1");
resp.setContentType("application;charset=utf-8");// 指定文件的保存类型。
resp.setHeader("Content-disposition", "attachment; filename="+ fileName);
ServletOutputStream oupstream = resp.getOutputStream();
FileInputStream from = new FileInputStream(file);
byte;
int bytes_read;
while ((bytes_read = from.read(buffer)) != -1) {
oupstream.write(buffer, 0, bytes_read);
}
oupstream.flush();
} catch (Exception e) {
}
}
这个是服务器端文件下载工具类 题主可以试试,望采纳
c# web 想实现将服务器上的文档链接地址发给我的用户,用户使用这个链接再下载文档链接如何实现
比较好的办法是在服务器端建立一个download.aspx页面,在该页面里根据传入的参数进行不同的下载,然后发给用户的地址就如下:
***隐藏网址***
这样当用户点击该链接时,就能自动下载文档了。
当然,还要在download.aspx.cs中写些代码,判断传入的id值,然后根据id值完成文件的下载
洋葱服务器怎么下载
洋葱服务器(Onion Server)是一种基于暗网(Dark Web)技术的服务器,可以在匿名的情况下提供网络服务。如果你要下载洋葱服务器,可以按照以下步骤进行:
***隐藏网址***
2. 安装完Tor浏览器后,启动它,并在浏览器地址栏中输入洋葱服务器的地址(以“.onion”结尾)。这个地址是一个受保护的本地服务,只能通过Tor浏览器来访问。你可以在暗网相关的论坛或社区中查找到一些洋葱服务器的地址。
3. 输入地址后,等待一段时间,服务器将会响应你的请求。在这个过程中,你需要保持网络连接稳定,不要随意关闭浏览器。
4. 一旦连接成功,在洋葱服务器上你可以查看、上传和下载文件。下载文件时,你需要点击相应的链接或按钮进行下载,具体操作和普通网站下载文件类似。
请注意:
1. 访问暗网和使用洋葱服务器有风险,可能会暴露你的个人信息。在访问暗网时,请务必保护好自己的隐私和安全。
2. 暗网中的部分内容可能涉及非法活动,请勿下载和传播非法内容。
3. 使用洋葱服务器传输文件时,请注意文件的安全性和合法性,不要上传和下载非法内容,否则可能会涉及到法律问题。

更多文章:
制作网页时通常需要在同一网页内跳转常常采用制作什么超链接(简述在网页设计中制作超链接的类型)
2026年9月5日 07:00
开发工具按钮是表格部分数据清零(怎么添加一个Excel批量删除多个单元格内容按钮)
2026年9月5日 05:45
石家庄网站优化全包(石家庄公交第三批线网线优化什么时候开始)
2026年9月5日 05:15
一个卖东西的微信小程序,都需要什么条件怎么制作?我想做一个社区团购的小程序,怎么入手呢,大概需要花多少钱
2026年9月5日 05:00







