ASP.NET中利用WebClient上传图片到远程服务的方法
发布时间 - 2026-01-10 22:31:21 点击率:次一、客户端

1.页面
<form id="Form1" method="post" runat="server" enctype="multipart/form-data"> <input id="MyFile" type="file" runat="server" /> <br /> <br /> <asp:Button ID="Button1" runat="server" Text="上载文件" OnClick="Button1_Click"></asp:Button> </form>
2.后台
System.Web.HttpFileCollection oFiles = System.Web.HttpContext.Current.Request.Files;
string FilePath = oFiles[0].FileName;
string FileName = FilePath.Substring(FilePath.LastIndexOf("\\") + 1);
byte[] b = new byte[oFiles[0].ContentLength];
System.IO.Stream fs = (System.IO.Stream)oFiles[0].InputStream;
fs.Read(b, 0, oFiles[0].ContentLength);
string postData = "data=" + HttpUtility.UrlEncode(Convert.ToBase64String(b));
var webclient = new WebClient();
webclient.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
byte[] byteArray = Encoding.UTF8.GetBytes(postData);
//byte[] buffer = webclient.UploadData("http://localhost/datapush/DataPush.ashx", "POST", byteArray);//ashx
byte[] buffer = webclient.UploadData("http://localhost/datapush/WebServiceDataPush.asmx/DataPush", "POST", byteArray);//asmx
var msg = Encoding.UTF8.GetString(buffer);
Response.Write(msg);
二、服务端
string msg = "";
byte[] filedata = Convert.FromBase64String(context.Request["data"]);
if (filedata.Length == 0)
{
msg= "{\"code\":\"上传的是空文件\"}";
}
if (filedata.Length > 1048576)
{
msg = "{\"code\":\"图片大小不能超过1M\"}";
}
string fileextension = filedata[0].ToString() + filedata[1].ToString();
if (fileextension == "7173")
{
fileextension = "gif";
}
else if (fileextension == "255216")
{
fileextension = "jpg";
}
else if (fileextension == "13780")
{
fileextension = "png";
}
else if (fileextension == "6677")
{
fileextension = "bmp";
}
else if (fileextension == "7373")
{
fileextension = "tif";
}
else
{
msg = "{\"code\":\"上传的文件不是图片\"}";
}
try
{
//保存图片
string filename = Guid.NewGuid().ToString("D") + "." + fileextension;
System.IO.MemoryStream ms = new System.IO.MemoryStream(filedata);
System.IO.FileStream fs = new System.IO.FileStream(context.Server.MapPath("~/") + "/采集图片/" + filename, System.IO.FileMode.Create);
ms.WriteTo(fs);
ms.Close();
fs.Close();
fs = null;
ms = null;
msg = "{\"code\":\"上传图片成功\"}";
}
catch (Exception exe)
{
msg = "{\"code\":\"" + exe.Message + "\"}";
}
以上所述是小编给大家介绍的ASP.NET中利用WebClient上传图片到远程服务的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# asp.net
# webclient
# 上传
# 上传图片
# silverlight用webclient大文件上传的实例代码
# C# WebClient类用法实例
# C#中在WebClient中使用post发送数据实现方法
# Silverlight中同步调用WebClient的解决办法
# 是同步!
# 用WebClient.UploadData方法上载文件数据的方法
# 小编
# 的是
# 在此
# 给大家
# 所述
# 给我留言
# 服务端
# 感谢大家
# 客户端
# 疑问请
# 有任何
# Current
# HttpContext
# oFiles
# string
# FilePath
# Request
# Files
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程
微信小程序制作网站有哪些,微信小程序需要做网站吗?
Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置
网站页面设计需要考虑到这些问题
如何在腾讯云服务器上快速搭建个人网站?
高防服务器租用如何选择配置与防御等级?
高防服务器:AI智能防御DDoS攻击与数据安全保障
Android自定义控件实现温度旋转按钮效果
html如何与html链接_实现多个HTML页面互相链接【互相】
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
如何获取PHP WAP自助建站系统源码?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
如何在阿里云虚拟主机上快速搭建个人网站?
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
济南网站建设制作公司,室内设计网站一般都有哪些功能?
Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复
Laravel如何记录自定义日志?(Log频道配置)
Laravel如何使用withoutEvents方法临时禁用模型事件
如何利用DOS批处理实现定时关机操作详解
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率
HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
*服务器网站为何频现安全漏洞?
HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】
Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用
Angular 表单中正确绑定输入值以确保提交与验证正常工作
用yum安装MySQLdb模块的步骤方法
三星、SK海力士获美批准:可向中国出口芯片制造设备
,怎么在广州志愿者网站注册?
如何挑选优质建站一级代理提升网站排名?
佛山网站制作系统,佛山企业变更地址网上办理步骤?
个人网站制作流程图片大全,个人网站如何注销?
Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性
php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】
如何在阿里云虚拟服务器快速搭建网站?
Laravel如何使用Eloquent进行子查询
Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门
uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址
Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】
高端网站建设与定制开发一站式解决方案 中企动力
黑客如何利用漏洞与弱口令入侵网站服务器?
googleplay官方入口在哪里_Google Play官方商店快速入口指南
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
Laravel中的Facade(门面)到底是什么原理
百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?

