WebApi--Put类型调用接口上传文件

博主分享了在开发WebAPI过程中遇到的关于PUT方法上传文件的困难,包括设置正确头部参数、请求流操作及响应处理。详细展示了如何构造请求并传递Content-MD5和文件内容,以期帮助其他开发者解决类似问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在写webapi,遇到了一些比较难解决的问题,记录下来

我这里有一个PUT接口,是用来上传文件用的
放些头部参数
在这里插入图片描述
下面就是代码部分

		string serviceUrl = "http://123.233.23.22:9090/esignpro/rest/filemanage/getUploadUrl";//接口地址
		//创建Web访问对象
		HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(serviceUrl);
		myRequest.Method = "PUT";
		myRequest.ContentType = "application/octet-stream";
		myRequest.ContentLength = contentLength;//头部报文中的文件长度
		myRequest.Headers["Content-MD5"] = ContentMD5;//报文中加密信息
		myRequest.MaximumAutomaticRedirections = 1;
		myRequest.AllowAutoRedirect = true;
		//读文件
		FileStream fs = new FileStream(@"D:\1.pdf", FileMode.Open, FileAccess.Read);
		byte[] bArr = new byte[fs.Length];
		fs.Read(bArr, 0, bArr.Length);
		fs.Close();
		//写文件
		Stream postStream = myRequest.GetRequestStream();
		postStream.Write(bArr, 0, bArr.Length);
		postStream.Close();
		HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();
		StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);
		returnXml = reader.ReadToEnd();//返回结果
		reader.Close();
		myResponse.Close();

到此结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值