# WebAsyncWrapper
WebClient和WebRequest包装类,用于启用回调式异步请求
*注意* 仅限Windows且仅限Excel,需要引用“Microsoft WinHTTP Services, version 5.1”
用法:
~~~vb
'// Module: Handler
Public Sub Simple(Response As WebResponse)
'// ...
End Sub
Public Sub WithArgs(Response As WebResponse, Args As Variant)
'// ...
End Sub
Dim Client As New WebClient
Client.BaseUrl = "https://api.example.com/v1/"
'// 包装类需要客户端执行请求
Dim Wrapper As New WebAsyncWrapper
Set Wrapper.Client = Client
Dim Request As New WebRequest
Request.Resource = "messages"
Wrapper.ExecuteAsync Request, "Handler.Simple"
'// -> Simple called later with response
'// 如果需要将状态传递给回调,请使用CallbackArgs
Dim Args As Variant
Args = Array("abc", 123)
Wrapper.ExecuteAsync Request, "Handler.WithArgs", Args
'// -> WithArgs called later with response and args
~~~
- README
- 指南
- 概述
- GET Request
- WebRequest
- 属性
- Resource
- Method
- Body
- Format
- RequestFormat
- ResponseFormat
- CustomRequestFormat
- CustomResponseFormat
- ContentType
- Accept
- ContentLength
- FormattedResource
- Cookies
- Headers
- QuerystringParams
- UrlSegments
- 方法
- AddHeader
- SetHeader
- AddUrlSegment
- AddQuerystringParam
- AddCookie
- AddBodyParameter
- CreateFromOptions
- WebClient
- 属性
- BaseUrl
- Authenticator
- TimeoutMs
- ProxyServer
- ProxyBypassList
- ProxyUsername
- ProxyPassword
- EnableAutoProxy
- Insecure
- FollowRedirects
- 方法
- Execute
- GetJson
- PostJson
- SetProxy
- GetFullUrl
- WebResponse
- 属性
- StatusCode
- StatusDescription
- Content
- Data
- Body
- Headers
- Cookies
- 方法
- Update
- WebHelpers
- 属性
- WebStatusCode
- WebMethod
- WebFormat
- UrlEncodingMode
- EnableLogging
- 方法
- LogDebug
- LogWarning
- LogError
- LogRequest
- LogResponse
- Obfuscate
- ParseJson
- ConvertToJson
- ParseUrlEncoded
- ConvertToUrlEncoded
- ParseXml
- ConvertToXml
- ParseByFormat
- ConvertToFormat
- UrlEncode
- UrlDecode
- Base64Encode
- Base64Decode
- RegisterConverter
- JoinUrl
- UrlParts
- CloneDictionary
- CloneCollection
- CreateKeyValue
- FindInKeyValues
- AddOrReplaceInKeyValues
- FormatToMediaType
- MethodToName
- HMACSHA1
- HMACSHA256
- MD5
- CreateNonce
- IWebAuthenticator
- 方法
- BeforeExecute
- AfterExecute
- PrepareHttp
- PrepareCurl
- WebAsyncWrapper
- 属性
- Client
- 方法
- ExecuteAsync
- 范例
- Salesforce网站
- Google APIs
- Todoist API
- 其他主题
- 调试
- 授权
- 实现自己的IWebAuthenticator
- Url编码