【问题标题】:Equivalent cURL in VBA?VBA中的等效卷曲?
【发布时间】:2013-06-08 10:48:33
【问题描述】:

我的应用程序有一个 API,它允许我向它发出 cURL 请求。 我需要将它实现到 VBA 中,以便我的桌面数据库可以向我的 Web 应用程序发出 CURL 请求。

curl -i --user admin@admin.com:password -X PUT -d "test=testing" https://mywebsite.com/api

如何在 Access VBA 中实现这一点?我可以使用 WinHttp.WinHttpRequest.5.1 吗? 有什么例子吗? 谢谢 亚当,

【问题讨论】:

    标签: ms-access curl vba


    【解决方案1】:

    现在解决了,效果很好。 为了其他人的方便。

    TargetURL = "https://www.mysite.co.uk/app/api/v1/test"
    Set HTTPReq = CreateObject("WinHttp.WinHttpRequest.5.1")
    HTTPReq.Option(4) = 13056 '
    HTTPReq.Open "PUT", TargetURL, False
    HTTPReq.SetCredentials "user", "password", 0
    HTTPReq.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
    HTTPReq.send ("test[status]=" & Forms!curl!Text0.Value & "&test2[status]=" & Text2.Value)
    MsgBox (HTTPReq.responseText)
    

    【讨论】:

    • Option(4)的意义是什么? WinHttpRequest documentation 没有指定。
    • 我知道是 3 年前的事了,但我也想知道这个 Option(4) 是什么,我在这个链接下找到了一些有用的信息johankanngard.net/2005/11/11/…
    • 根据WHR Option docs,4是枚举值“WinHttpRequestOption_SslErrorIgnoreFlags”。如果将 13056 转换为十六进制,则会得到 0x3300,如果您进一步查看 SslErrorIgnoreFlags 描述,您会发现它忽略了所有错误。
    • 非常感谢。我使用了一个Get方法,所以我没有使用参数,只使用url,但它工作得很好。再次感谢您
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-17
    • 2012-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多