首页 > 一个关于 HttpWebRequest post 数据的问题

一个关于 HttpWebRequest post 数据的问题

  byte[] PicByte = GetPictureData(APIImage); // 这个是 图片数据

下面是PicByte 数据的组成方式

    /// 得到图片的 二进制数据
    /// </summary>
    /// <param name="imagepath"></param>
    /// <returns></returns>
    public static byte[] GetPictureData(string imagepath)
    {
        /**/
        ////根据图片文件的路径使用文件流打开,并保存为byte[] 
        FileStream fs = new FileStream(imagepath, FileMode.Open);
        //可以是其他重载方法 
        byte[] byData = new byte[fs.Length];
        fs.Read(byData, 0, byData.Length);
        fs.Close();
        return byData;
    }

bodyBytes 数据组成方式

  string body = "Key=8bb901614c59d36ef11019e5ebc54ff7
  &Secret=8bb901614c59d36ef11019e5ebc54ff7";
  byte[] bodyBytes = Encoding.UTF8.GetBytes(body);
  

byte[] bodyBytes = Encoding.UTF8.GetBytes(body); //这个是 String 数据

下面是我自己写的 post , 老出错

 HttpWebRequest getAccessRequest = WebRequest.Create(APIUrl) as HttpWebRequest;
 //APIUrl是post线上api
 getAccessRequest.Timeout = 30000;//30秒连接不成功就中断 
 getAccessRequest.Method = "post";

 Stream requestStream = getAccessRequest.GetRequestStream();
 requestStream.Write(bodyBytes, 0, bodyBytes.Length);
 requestStream.Write(PicByte, 0, PicByte.Length);
 //??  我该怎么把 图片和字符串融合起来 post 给 api

 HttpWebResponse response = getAccessRequest.GetResponse() as HttpWebResponse;
   //这里报400错误 ,就是图片这个参数错误
   

** 网上是有多个字符串实现的post示例 , 可是我的是 图片的data数据和字符串的data数据 ? 求大神给予帮助 小弟谢谢了 !


执行带文件上传的HTTP POST请求。

https://baidupcs.svn.codeplex.com/svn/src/BaiduSdk/BaiduSdk/Util/WebUtils.cs
https://baidupcs.svn.codeplex.com/svn/src/BaiduSdk/BaiduSdk/Util/FileItem.cs

【热门文章】
【热门文章】