json - 获取 JSON 响应 XMLHTTP 替代方案
问题描述
我有一个使用 XMLHTTP API 请求的工作代码 这是代码
Const sURL As String = "https://developers.zomato.com/api/v2.1/restaurant?res_id=258"
Dim http As MSXML2.XMLHTTP60, html As MSHTML.HTMLDocument, json As Object, r As Long
Set http = New MSXML2.XMLHTTP60
Set html = New MSHTML.HTMLDocument
r = 2
With http
.Open "Get", sURL, False
.setRequestHeader "User-Agent", "Mozilla/5.0"
.setRequestHeader "user-key", "APIKEY"
.send
html.body.innerHTML = .responseText
Set json = JSONConverter.ParseJson(.responseText)
是否有替代方法可以在不使用 XMLHTTP 库的情况下获取 JSON 响应(因为这在 MAC 上不起作用)?感谢先进的帮助。
解决方案
我已经能够对其进行配置并使其工作
Sub Test()
Const sUrl As String = "https://reqres.in/api/users/2"
Dim Response As New WebRequest, Client As New WebClient, rObj As Object, json As Object
Client.BaseUrl = sUrl
With Response
.Method = WebMethod.HttpGet
.RequestFormat = WebFormat.json
End With
Set rObj = Client.Execute(Response)
Set json = WebHelpers.ParseJson(rObj.Content)
Debug.Print rObj.Content
Debug.Print json("data")("email")
End Sub
推荐阅读
- visual-studio-code - 为什么我的某些 Visual Studio 代码扩展被禁用
- python - VideoCapture 相机设置不适用
- c# - 测试存储桶区域时,Amazon S3 GetBucketLocation 引发异常,错误代码为 InvalidAccessKeyId
- javascript - WEBRTC 带插座开关输入设备
- java - 检查整数列表是否包含两组不同的重复数字
- linux - 带有 docker 的 Nginx 不适用于不同的端口映射
- android - 无法创建颤振项目:没有为输出目录错误指定选项
- logging - Apache Airflow SmartSensor 打印日志两次
- php - PHP调整多个图像的大小
- java - Akka中设置接收超时有什么用?