c# post提交文件,图片

c# post提交文件 http用的苏飞万能框架
框架链接:http://www.sufeinet.com

   #region 变量
                 byte[] UploadBuffers = null;
                 string BoundStr = "----WebKitFormBoundaryA14HrKi6lbyRwrCb";//根据抓包生成
                 StringBuilder UploadBuf = new StringBuilder();
                 #endregion

                 #region 头部数据
                 UploadBuf.Append(BoundStr + "\r\n");
                 UploadBuf.Append(@"Content-Disposition: form-data; name=""image""; filename=""VerifyCode_GetGolds.gif""" + "\r\n");
                 UploadBuf.Append("Content-Type: image/gif\r\n\r\n");
                 byte[] HeadBytes = Encoding.ASCII.GetBytes(UploadBuf.ToString());
                 #endregion

                 #region 图片数据
                 MemoryStream ms = new MemoryStream();
                 bmpobj.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp); 

                 byte[] PicBytes = ms.GetBuffer(); //图片转换byte[]
                 ms.Close();
                 #endregion

                 #region 尾部数据
                 UploadBuf.Clear();
                 UploadBuf.Append("\r\n" + BoundStr + "\r\n");
                 UploadBuf.Append(@"Content-Disposition: form-data; name=""txtLan""" + "\r\n\r\n\r\n");        
                 UploadBuf.Append(BoundStr + "--");
                 byte[] TailBytes = Encoding.ASCII.GetBytes(UploadBuf.ToString());
                 #endregion

                 #region 数组拼接
                 UploadBuffers = ComposeArrays(HeadBytes, PicBytes);
                 UploadBuffers = ComposeArrays(UploadBuffers, TailBytes);
                 #endregion

  #region 上传
                 HttpItem item = new HttpItem()
                 {
                     URL = url,
                     Method = "POST",
                     ContentType = "multipart/form-data; boundary=" + BoundStr.Substring(2),                
                     PostDataType = PostDataType.Byte,
                     PostEncoding = Encoding.UTF8,
                     PostdataByte = UploadBuffers,
                    Cookie = baiducoolkis
                 };



                 HttpResult result = helper.GetHtml(item);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C#中,可以使用HttpWebRequest类来发送POST请求。然而,对于POST方式,HttpWebRequest类并没有提供一个很方便的方法来设置Content-Type。但是,你可以通过设置HttpWebRequest的ContentType属性来指定Content-Type。在你的代码中,你可以使用"multipart/form-data"作为ContentType来上传json表格和文件。\[2\] 在你的代码中,你可以使用PostIQ函数来发送POST请求。这个函数接受四个参数:URL(服务器路径),FileName(文件名),jsonstr(表格),FilePath(文件路径)。在函数内部,它使用FileStream来打开文件,并将文件流作为上传的一部分。同时,它还使用一个字典来存储POST请求的参数,其中"entity"是表格的名称。最后,它调用HttpUploadClient.Execute方法来执行POST请求,并返回结果。\[2\] 在你的代码中,还有一个UploadParameterType类,它定义了一些属性和方法来设置上传文件的参数。其中,Url属性用于指定上传地址,FileNameKey和FileNameValue属性用于指定文件名称的键值对,Encoding属性用于指定编码格式,UploadStream属性用于指定上传文件的流,PostParameters属性用于指定上传文件携带的参数集合。\[3\] 所以,通过设置HttpWebRequest的ContentType属性为"multipart/form-data",你可以在C#中发送POST请求,并指定Content-Type为"multipart/form-data"。\[2\] #### 引用[.reference_title] - *1* [C#中使用HttpWebRequest用Post提交MultiPart数据](https://blog.csdn.net/aohaizhi7722/article/details/102160156)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [c# HTTP Post上传文件与表格 ContentType = “multipart/form-data](https://blog.csdn.net/www89574622/article/details/114641205)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值