Azure Формат токена концентратора IoT и его опции - PullRequest
0 голосов
/ 04 марта 2020

У нас есть устаревшие счетчики, которые подключены к облаку и могут быть настроены на отправку показаний на любую конечную точку http. Я также могу настроить его для добавления заголовков, таких как «Authorization = SharedAccessSignature sr = ...».

Однако происходит сбой, когда значение заголовка включает знак равенства ("=").

Таким образом, вопрос заключается в том, есть ли другие варианты использования токенов sas (я не могу использовать сертификаты)

1 Ответ

0 голосов
/ 04 марта 2020

Я использовал Rest Api через. net в моем приложении IoT Central. Вы можете проверить здесь полный код. Я правильно получал данные.

Объект HttpClient

request.Headers.Add("Authorization", getAuth(authScope, reason) + authTarget);

string getAuth(string scope, string target)
    {
        long utcTimeInMilliseconds = DateTime.UtcNow.Ticks / 10000;
        long expires = ((utcTimeInMilliseconds + (7200 * 1000)) / 1000);
        string sr = scope + "%2f" + target + "%2f" + deviceId;
        string sigNoEncode = computeHash(deviceKey, sr + '\n' + expires.ToString());
        string sigEncoded = Uri.EscapeDataString(sigNoEncode);
        return "SharedAccessSignature sr=" + sr + "&sig=" + sigEncoded + "&se=" + expires.ToString();
    }

надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...