Ядро AspNet - укажите формат даты и времени - PullRequest
0 голосов
/ 08 января 2019

Я использую сторонний API, который ожидает значение HTTP header, как показано ниже (используя формат ниже).

Дата: 2017-10-15T14: 25: 21Z

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

client.DefaultRequestHeaders.Add("Date", "2017-10-15T14:25:21Z");

Поэтому я изменяю код выше, как показано ниже

client.DefaultRequestHeaders.Date = DateTime.UtcNow;

Однако API выдает исключение «Отметка времени Hmac 2019-01-02 не является допустимым значением даты-времени ISO8601»

Как передать ожидаемый формат даты и времени в заголовке HTTP-запроса?

EDIT

- Я знаю, как получить строку даты в указанном формате. Здесь я спрашиваю, как передать объект даты UTC в заголовок HTTP, как показано ниже, с определенным форматом. Я также понимаю, что объект datetime не может иметь формат.

  **client.DefaultRequestHeaders.Date = DateTime.UtcNow**

1 Ответ

0 голосов
/ 08 января 2019

Сделай вот так

DateTime dt=Convert.ToDateTime("2019-01-02");           
string yourdate = dt.ToString("yyyy-MM-ddTHH:mm:ssZ");           
Console.WriteLine(yourdate);

Рабочий пример

enter image description here

...