Клиенту Kusto не удалось отправить запрос в сервис: заголовки запроса должны содержать только символы ASCII - PullRequest
1 голос
/ 09 апреля 2019

Я использую следующий код для генерации строки подключения

var kustoUri = $"https://{clusername}.{region}.kusto.windows.net";
var dmKustoUri = $"https://ingest-{clusername}.{region}.kusto.windows.net";

this.engineKustoConnectionStringBuilder = new KustoConnectionStringBuilder(kustoUri)
    .WithAadApplicationKeyAuthentication(applicationClientId, applicationKey, authority);
this.dmKustoConnectionStringBuilder =
    new KustoConnectionStringBuilder(dmKustoUri)
        .WithAadApplicationKeyAuthentication(applicationClientId, applicationKey, authority);

Но когда я запускаю команду, подобную приведенной ниже

using (var client = KustoClientFactory.CreateCslAdminProvider(this.engineKustoConnectionStringBuilder))
{
    var command = CslCommandGenerator.GenerateTableCreateCommand(table, columns);

    client.ExecuteControlCommand(command);
}

Я постоянно получаю сообщение об ошибке "Клиент Kusto не смоготправить запрос в службу: заголовки запроса должны содержать только символы ASCII. "

Я включил подробное отслеживание и вижу, что он все еще пытается соединиться с моим пользователем Azure вместо AadApplicationKeyAuthentication

Вот строка журнала:

Информация P.RestClient2: 0:, 2019-04-09T08: 58: 26.1875455Z, Информация P.RestClient2, Информация 5CG83138PZ, 5CG83138PZ / dotnet / 6744,6744,13324, cffdd7bc-7480-4141-a15b-9b6ce10523bc, cffdd7bc-7480-4141-a15b-9b6ce10523bc, ДН-RestClient-ExecuteControlCommand, KD2RunCommand; 94b12015-64aa-45a6-b087-b593965673ce, 7EB32A3F, "$$ HTTPRequest [RestClient2]:Глагол = POST, Uri = https://REDACTED.westeurope.kusto.windows.net/v1/rest/mgmt, Приложение = dotnet, Пользователь = AzureAD \ JoeyChömpff, ClientVersion = Kusto.Data: 6.2.0-preview; .NET Core 2.0 / CLRv4.0.30319.42000 / [clr.dll!FileVersion не найден], ClientRequestId = KD2RunCommand; 94b12015-64aa-45a6-b087-b593965673ce "

Используемые пакеты Nuget:

<PackageReference Include="Microsoft.Azure.Kusto.Data.NETStandard" Version="6.1.8" />
<PackageReference Include="Microsoft.Azure.Kusto.Ingest.NETStandard" Version="6.1.8" />

ОБНОВЛЕНИЕ:

Если я использую FullFx 4.7.1 иих NuGetPackages это работает!

  <package id="Microsoft.Azure.Kusto.Data" version="6.1.8" targetFramework="net471" />
  <package id="Microsoft.Azure.Kusto.Ingest" version="6.1.8" targetFramework="net471" />

1 Ответ

0 голосов
/ 09 апреля 2019

Спасибо, что сообщили об этом, @JSC.Если взглянуть по сторонам, я считаю, что это разрыв между поведением HttpClient в HttpClient .NET Framework, и мы посмотрим.

...