как получить данные формы из заголовков HTTP-сообщений с помощью серверного кода - PullRequest
2 голосов
/ 08 июня 2019

Я получаю обратный вызов от входа в MS для Azure Active Directory. Пост содержит токен id в заголовках, его нужно прочитать в строковую переменную на стороне сервера.

Я могу увидеть данные в инструментах chrome dev в разделе network / headers / formdata. Я перебрал коллекцию заголовков - ее там нет. Как, черт возьми, вы получаете доступ к этим данным?

Код, используемый для отображения заголовков (на самом деле используется vb.net, но сейчас я занимаю такую ​​небольшую долю рынка, что публикую для c #, который я могу легко перевести, если это не нужно.):

Dim loop1, loop2 As Integer
Dim arr1(), arr2() As String
Dim coll As NameValueCollection

' Load Header collection into NameValueCollection object.
coll = Request.Headers

' Put the names of all keys into a string array.
arr1 = coll.AllKeys
For loop1 = 0 To arr1.GetUpperBound(0)
    txtOutput.Text += "Key: " & arr1(loop1) & vbCrLf
    arr2 = coll.GetValues(loop1)
    ' Get all values under this key.
    For loop2 = 0 To arr2.GetUpperBound(0)
        txtOutput.Text += "Value " & CStr(loop2) & ": " & Server.HtmlEncode(arr2(loop2)) & vbCrLf & vbCrLf
    Next loop2
Next loop1

Я ожидал найти эти данные в коллекции заголовков, но их там нет.

1 Ответ

0 голосов
/ 10 июня 2019

У тебя почти было это. Ответ на ваш вопрос. Используйте coll = Request.Form вместо coll = Request.Headers.

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