绿夏之 2015-03-04 08:57 采纳率: 0%
浏览 2339

app 调用webservice的图片上传接口报错

以下为c#写的图片上传接口,图片是在app转为base64的;而当在服务上测试时是可以上传,即下图的位置图片说明
可是在app调用该接口时却出错,这是为什么,困扰了多天了。请大神帮忙哈

public JObject UploadPicture(string jsonString)
{
JToken Picture;
JObject jobject = JObject.Parse(jsonString);
Picture = jobject.GetValue("Picture");
JObject jObj = new JObject();
int re = 0;
string imgStr = Picture.ToString(),pictureAddress;
string picture = DateTime.Now.Ticks.ToString() + ".jpg", filePath;
filePath = "~/Resources/images/" + picture;

//将base64图片解析出来
if (imgStr == "")
{
  re = 0;
}
else
{
  byte[] LogoBytes = Convert.FromBase64String(imgStr);//base64转二进制
  MemoryStream stream = new MemoryStream(LogoBytes);//二进制转流
  Image img1 = Image.FromStream(stream);//流转image
  if (Directory.Exists(Server.MapPath("~/Resources/images")) == false)
  {
    Directory.CreateDirectory(Server.MapPath("~/Resources/images"));
  }
  string add = Server.MapPath(filePath);//地址
  Bitmap server = new Bitmap(img1);
  try
  {
    server.Save(add);
    re = 1;
  }
  catch
  {
    re = 0;
  }
  stream.Dispose();
  server.Dispose();
  img1.Dispose();
}
jObj.Add(new JProperty("re", re));
if (re == 1)
{
  pictureAddress = "/wd_test/Resources/images/" + picture;
  jObj.Add(new JProperty("pictureAddress", pictureAddress));
}

return jObj;

}

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-03 11:12
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    从你的描述来看,你似乎遇到了一个HTTP请求错误。在C#中,这通常与网络连接问题有关。你可以尝试以下几个步骤来解决这个问题:

    1. 检查网络连接:确保你的服务器能够正常访问互联网。

    2. 确保你的客户端和服务器端都正确设置了正确的URL路径。例如,在你的C#代码中,你应该使用Request.Url属性来设置正确的URL。

    3. 验证你的JSON数据格式是否正确。检查你的JSON字符串是否有语法错误或拼写错误,并且每个字段的类型是否符合预期。

    4. 如果你的服务器是Web API,可能需要添加更多的验证逻辑以防止恶意攻击者发送无效的数据。

    5. 尝试使用不同的编程语言或框架(如Python、Node.js)来处理HTTP请求,看看是否有相同的错误发生。这样可以排除特定的语言/环境的问题。

    如果你仍然无法解决问题,提供一些具体的错误信息或者日志截图可能会有所帮助。希望这些信息能帮助你找到问题所在!

    评论

报告相同问题?