为什么调用azure data lake gen2的put文件api时会出现缺少头的错误?

为什么调用azure data lake gen2的put文件api时会出现缺少头的错误?,azure,azure-data-lake,azure-data-factory-2,Azure,Azure Data Lake,Azure Data Factory 2,我正在尝试直接调用gen2 rest端点,并不断收到一个错误,即我缺少所需的标头(MissingRequiredHeader消息未指定此请求必需的HTTP标头。我无法查看缺少的标头。我正在使用以下代码发送请求 var client = new HttpClient(); client.BaseAddress = new Uri($"https://{account}.dfs.core.windows.net/"); client.DefaultRequestHeaders.Accept.Cle

我正在尝试直接调用gen2 rest端点,并不断收到一个错误,即我缺少所需的标头(MissingRequiredHeader消息未指定此请求必需的HTTP标头。我无法查看缺少的标头。我正在使用以下代码发送请求

var client = new HttpClient();

client.BaseAddress = new Uri($"https://{account}.dfs.core.windows.net/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Add("api_version", "2018-11-09");
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", _authResult.AccessToken);

string azPath = $"{baseRawSystemPath}/{path.Replace("\\", "/")}";

byte[] bytes = Encoding.UTF8.GetBytes(content);
HttpContent body = new StringContent(content, Encoding.UTF8, "application/json");

HttpResponseMessage response = await client.PutAsync(azPath, body);
if (response.IsSuccessStatusCode)
{
    var responseListingJson = await response.Content.ReadAsStringAsync();
    return;
}
else
{
    var error = await response.Content.ReadAsStringAsync();
    return;
}

仅回答我自己的问题…我缺少resource=file查询字符串参数。这允许请求成功并创建文件。

仅回答我自己的问题…我缺少resource=file查询字符串参数。这允许请求成功并创建文件