如何从WebClient.UploadFile中删除multipart / form-data;边界?

时间:2013-08-30 19:00:04

标签: c# http-headers youtube-api

我正在尝试将图片上传到Google API。我正在使用.net WebClient.UploadFile。当我上传时,请求包含Content-Type multipart / form-data; boundary =在请求中,我收到以下错误。

  

“内容类型   multipart / form-data; boundary = --------------------- 8d0738def5b9322是   不是有效的输入类型“

有没有办法从请求中删除它,还是需要使用其他上传方法?

 var client = new WebClient();
 client.Headers.Add("Authorization", "Bearer " + _accessToken);
 client.Headers.Add("GData-Version", "2");
 client.Headers.Add("X-GData-Key", "key=" + _developerKey);
 client.Headers.Add("Content-Type", "image/jpeg");
 client.UploadFile(URL_PROFILE_UPLOAD_FEED.Replace("default", channelId), filePath);

文档要求的请求格式。

POST / feeds / api / partners / default / images / IMAGE_TYPE HTTP / 1.1 主持人:uploads.gdata.youtube.com 内容类型:image / jpeg 授权:持票人ACCESS_TOKEN GData-Version:2 X-GData-Key:key = DEVELOPER_KEY

BINARY_FILE_DATA

1 个答案:

答案 0 :(得分:2)

您应该使用UploadData类的WebClient方法,而不是UploadFile