如何解决Azure DataLakeStore File Content-Disposition Added in file?
How to Solve Azure DataLakeStore File Content-Disposition Added in file?
我已将文本文件或图像文件或 Zip 文件上传到 Azure Data Lake Store。它已上传成功。但是,之前在文件中添加了一些内容。
我使用 Rest API 上传了一个文件。 (在C#中使用HttpClient上传文件)
此类内容已添加到
---b8b2dfc6-6128-43b5-8fb8-022820aedf02
Content-Disposition: form-data;
name=file1; filename=tick.txt; filename*=utf-8''tick.txt
如果添加的内容如此,图像文件和 zip 文件无法在 Viewer/Explore 中打开。
如何删除文件中添加的此类 header 来自 Upload.Here 我分享了我的文件上传代码。
public object UploadFile(string srcfile, string destFilePath, bool force = true)
{
var uploadurl = string.Format(UploadUrl, _datalakeAccountName, destFilePath);
var stream = File.OpenRead(srcfile);
HttpContent fileStreamContent = new StreamContent(stream);
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _accesstoken.access_token);
using (var formData = new MultipartFormDataContent())
{
formData.Add(fileStreamContent, "file1", Path.GetFileName(srcfile));
var response = client.PutAsync(uploadurl, formData).Result;
return new { Status = response.StatusCode, Message = response.ReasonPhrase, details = response.ToString() };
}
}
}
提前致谢。
请尝试使用以下代码,它在我这边工作正常。
public object UploadFile(string srcfile, string destFilePath, bool force = true)
{
var uploadurl = string.Format(UploadUrl, _datalakeAccountName, destFilePath);
var stream = File.OpenRead(srcfile);
HttpContent fileStreamContent = new StreamContent(stream);
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new
AuthenticationHeaderValue("Bearer", _accesstoken.access_token);
client.DefaultRequestHeaders
.Accept
.Add(new MediaTypeWithQualityHeaderValue("application/octet-stream"));
var response = client.PutAsync(uploadurl, fileStreamContent).Result;
return new { Status = response.StatusCode, Message = response.ReasonPhrase, details = response.ToString() };
}
}
我已将文本文件或图像文件或 Zip 文件上传到 Azure Data Lake Store。它已上传成功。但是,之前在文件中添加了一些内容。 我使用 Rest API 上传了一个文件。 (在C#中使用HttpClient上传文件)
此类内容已添加到
---b8b2dfc6-6128-43b5-8fb8-022820aedf02
Content-Disposition: form-data; name=file1; filename=tick.txt; filename*=utf-8''tick.txt
如果添加的内容如此,图像文件和 zip 文件无法在 Viewer/Explore 中打开。
如何删除文件中添加的此类 header 来自 Upload.Here 我分享了我的文件上传代码。
public object UploadFile(string srcfile, string destFilePath, bool force = true)
{
var uploadurl = string.Format(UploadUrl, _datalakeAccountName, destFilePath);
var stream = File.OpenRead(srcfile);
HttpContent fileStreamContent = new StreamContent(stream);
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _accesstoken.access_token);
using (var formData = new MultipartFormDataContent())
{
formData.Add(fileStreamContent, "file1", Path.GetFileName(srcfile));
var response = client.PutAsync(uploadurl, formData).Result;
return new { Status = response.StatusCode, Message = response.ReasonPhrase, details = response.ToString() };
}
}
}
提前致谢。
请尝试使用以下代码,它在我这边工作正常。
public object UploadFile(string srcfile, string destFilePath, bool force = true)
{
var uploadurl = string.Format(UploadUrl, _datalakeAccountName, destFilePath);
var stream = File.OpenRead(srcfile);
HttpContent fileStreamContent = new StreamContent(stream);
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new
AuthenticationHeaderValue("Bearer", _accesstoken.access_token);
client.DefaultRequestHeaders
.Accept
.Add(new MediaTypeWithQualityHeaderValue("application/octet-stream"));
var response = client.PutAsync(uploadurl, fileStreamContent).Result;
return new { Status = response.StatusCode, Message = response.ReasonPhrase, details = response.ToString() };
}
}