首页 > 其他分享 >别人访问下载接口

别人访问下载接口

时间:2023-09-20 13:57:28浏览次数:27  
标签:Encoding Text System 接口 Content 访问 context Response 下载

//post 请求报文体的接收方式
HttpContext.Current.Response.ContentType = "application/json";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
System.IO.Stream inputStream = HttpContext.Current.Request.InputStream;
System.Text.Encoding encoding = HttpContext.Current.Request.ContentEncoding;
System.IO.StreamReader streamReader = new System.IO.StreamReader(inputStream, encoding);
string json = streamReader.ReadToEnd();
//得到错误信息
TH.SampleAccept.ServiceImpl.ResData res = daSErvice.GetPDFFile(json, context);
if (res.StatusCode == 200)
{
string fullPath = context.Server.MapPath("~///") + res.FilePaths.FileName;
string fileName = Path.GetFileName(fullPath);
FileInfo fileinfo = new FileInfo(fullPath);
context.Response.Clear(); //清除缓冲区流中的所有内容输出
context.Response.ClearContent(); //清除缓冲区流中的所有内容输出
context.Response.ClearHeaders(); //清除缓冲区流中的所有头
context.Response.ContentEncoding = System.Text.Encoding.UTF8;
context.Response.AddHeader("Content-type", "text/html;charset=UTF-8");
context.Response.ContentEncoding = System.Text.Encoding.UTF8; //获取或设置输出流的 HTTP 字符集
context.Response.Buffer = true; //该值指示是否缓冲输出,并在完成处理整个响应之后将其发送 filename* = UTF-8''"+name
//context.Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);
context.Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(System.Text.Encoding.UTF8.GetBytes(fileName)));
context.Response.AddHeader("Content-Length", fileinfo.Length.ToString());
context.Response.AddHeader("Content-Transfer-Encoding", "binary");
context.Response.ContentType = "application/unknow"; //获取或设置输出流的 HTTP MIME 类型
context.Response.TransmitFile(fullPath);
}

标签:Encoding,Text,System,接口,Content,访问,context,Response,下载
From: https://www.cnblogs.com/Terrelll/p/17717133.html

相关文章

  • JAVA17/JAVA21接口和多态机制
    day08-JAVAOOP课程目标1.【理解】什么是接口2.【掌握】接口的定义格式3.【掌握】接口的使用4.【理解】接口的成员特点5.【理解】类和接口抽象类和接口之间的关系6.【掌握】单继承多实现7.【理解】接口之间的多继承8.【掌握】接口的案例9.【理解】什么是多态......
  • java代码访问网页
    importjava.io.BufferedReader;importjava.io.InputStreamReader;importjava.net.URL;importjava.net.HttpURLConnection;publicclassWebPageAccess{publicstaticvoidmain(String[]args){Stringurl="http://example.com";//输入要访......
  • Http Fetch+StreamSaver.js在内存有限的设备下载大文件
    目前前端没有很好的api支持流式的文件的分片下载。如果直接把整个文件保存到Blob对象中再保存,有可能出现很多不可以预期的问题,可能会因为达到浏览器的Blob对象上限而下载失败。也有机会因为客户端内存太低而导致OOM。那如果我们有额外的文件服务器的话,可以选择把文件先导出到文件......
  • windows下elasticsearch安装完无法访问9200的问题
    问题描述:windows系统下启动成功,但无法访问http://localhost:9200/系统环境:操作系统:WindowsServer2022DatacenterJDK版本:jdk-8u381-windows-x64.exeElasticsearch版本:elasticsearch-8.10.1-windows-x86_64.zip注:Elasticsearch最低要求JDK1.8,下载地址:https://www.elastic.co......
  • 【.NET8】访问私有成员新姿势UnsafeAccessor(下)
    前言书接上回,我们讨论了在.NET8中新增的UnsafeAccessor,并且通过UnsafeAccessor访问了私有成员,这极大的方便了我们代码的编写,当然也聊到了它当前存在的一些局限性,那么它的性能到底如何?我们今天就来实际测试一下。测试代码话不多说,直接上代码,本次测试代码如下:usingSystem.Linq.......
  • macOS 运行xxx.command文件提示”无法执行,因为您没有正确的访问权限“解决方法
    使用苹果mac电脑运行.command文件时,是否遇到弹出”无法执行,因为您没有正确的访问权限“的窗口?遇到这种问题怎么解决呢?这里小编为大家带来了详细的解决方法,一起来看看吧!解决方法:方法一:打开终端工具,输入以下命令:sudosh注意后面有空格然后再把.command文件直接拖入终端按回车键即可......
  • 【Azure 存储服务】访问Azure Blob File遇见400-Condition Headers not support错误的
    问题描述在微软云存储账号的服务中,存储一些静态图片,然后通过AppService访问,但是遇见了400-conditionheadersnotsupport错误。在单独通过浏览器访问FileShare中的文件,发现第一次可以请求成功,但是第二次刷新后就遇见400错误,第三次刷新的时候又访问成功,如此循环下去。错误消......
  • Windows server 2022安装配置——WSL2 访问
    从局域网访问wsl2首先必须得知道这两个ip的含义。在windows下执行wslhostname-i 命令,是通过WSL2安装的Linux分发版IP地址(WSL2VM的地址)在linux子系统下执行cat/etc/resolv.conf 命令,是表示从WSL2子系统看到的WINDOWS系统的IP地址(WSL2VM)WSL2......
  • [异常处理] 下载execl 模版功能,execl 文件打不开
    问题定位:execl文件被压缩,导致打不开解决方案:pom文件中添加上:<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId......
  • 05访问控制:如何选取一个合适的数据保护方案?
    身份认证的核心问题是身份管理,因此我们可以采用单点登录的形式,来解决复杂的身份管理问题。常用的单点登录方式包括CAS流程、JWT、OAuth和OpenID。通过身份认证,我们只能够确认用户的身份,而对用户的操作和访问行为的把控,就是授权和审计的任务了。“授权”和“访问控制”其实是同一......