【发布时间】:2014-06-16 20:37:51
【问题描述】:
我想使用 Windows 登录中的 Kerberos 票证向具有 VBA 的 Java servlet 发送 POST 请求以进行身份验证,然后从 servlet 检索 JSON 响应。我可以在不使用 InternetExplorer 对象的情况下实现这一点吗,例如使用 WinHttpRequest?
【问题讨论】:
标签: vba authentication post kerberos winhttprequest
我想使用 Windows 登录中的 Kerberos 票证向具有 VBA 的 Java servlet 发送 POST 请求以进行身份验证,然后从 servlet 检索 JSON 响应。我可以在不使用 InternetExplorer 对象的情况下实现这一点吗,例如使用 WinHttpRequest?
【问题讨论】:
标签: vba authentication post kerberos winhttprequest
WinHttpRequest 不是 IE 对象。只要您设置放宽安全权限,上述用例就可以完美运行。去年我实现了一个概念验证:Excel、VBA、REST、Tomcat、SPNEGO 身份验证。
存根代码:
Dim winHttp As Object
Set winHttp = CreateObject("WinHttp.WinHttpRequest.5.1")
winHttp.SetAutoLogonPolicy (0)
winHttp.Open "GET", "http://..."
winHttp.send
Dim success As Boolean
success = winHttp.waitForResponse(5)
If Not success Then
Debug.Print "DOWNLOAD FAILED!"
Exit Sub
End If
Dim responseText As String
responseText = winHttp.responseText
【讨论】: