我学习一个站点的API,我需要传递像post请求的图像。 这是我的代码:
var bytes = File.ReadAllBytes(@"C:\Users\Name\Desktop\test\myImage.jpg");
var str = Encoding.Default.GetString(bytes, 0, bytes.Length);
Post(uri, GetParams("file", str));
private static string Post(string uri, NameValueCollection parameters)
{
using (var client = new WebClient())
{
var response = client.UploadValues(uri, parameters);
return Encoding.Default.GetString(response);
}
}
private static NameValueCollection GetParams(params string[] param)
{
var result = new NameValueCollection();
if (param.Length % 2 != 0)
return result;
for (int i = 0; i < param.Length; i += 2)
result[param[i]] = param[i + 1];
return result;
}
我从未使用过API来传递某些文件,也许这样做错了?我使用simle参数的方法,也许我必须将图像传递给其他人?
答案 0 :(得分:0)
using (var client = new WebClient())
{
var response = client.UploadFile(apiUrl, @"C:\Users\User\Desktop\test\asd.jpg");
}
它正在运作