我正在接收来自MS登录的azure活动目录回调。post在头中包含一个id标记,需要将其读入服务器端的字符串变量中。
我可以在chrome开发工具的network/headers/formdata下看到数据。我已经遍历了headers集合-它不在那里。你到底是怎么访问这些数据的?
用于显示标题的代码(实际上使用的是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
我本想在headers集合中找到这些数据,但它不在那里。
最佳答案
你差点就吃到了。答案在你的问题里。使用coll = Request.Form
而不是coll = Request.Headers
。
关于c# - 如何使用服务器端代码从http帖子标题中获取表单数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56509232/