Vba 垃圾在「;获得;RallyDev API的回应
我在Excel中有一个函数:Vba 垃圾在「;获得;RallyDev API的回应,vba,excel,rally,Vba,Excel,Rally,我在Excel中有一个函数: Function getState(Defects As Object) As String Dim str As String Dim res As String Dim was As Boolean Dim sURL As String Dim oRequest As Object Set oRequest = CreateObject("WinHttp.WinHttpRequest.5.1") was = False For Each defect In
Function getState(Defects As Object) As String
Dim str As String
Dim res As String
Dim was As Boolean
Dim sURL As String
Dim oRequest As Object
Set oRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
was = False
For Each defect In Defects
If was = False Then
str = "(FormattedID = """ & defect & """)"
res = str
was = True
Else
res = res & " OR " & str
End If
Next defect
sURL = "https://rally1.rallydev.com/slm/webservice/v2.0/defect?query=(" & res & ")&fetch=FormattedID,State"
oRequest.Open "GET", sURL, True
oRequest.setRequestHeader "Content-Type", "application/json;charset=UTF-8"
oRequest.Send
oRequest.WaitForResponse
' Set Defects = oRequest.ResponseText
Debug.Print (oRequest.ResponseText)
End Function
不幸的是,我得到的响应是垃圾而不是json,比如:
? i?ANA0 E?=A(utU
“RoP”的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者们的研究者的研究者们的研究者的研究者Az?7bw?/#eWp ^ u?ZU?u?3?q?a)c?y7µe?e
请你看一下,并提供一个解决方案,如何修复它
提前感谢!响应已压缩。请尝试为Accept Encoding:identity设置请求标头,或解压缩响应。Larry的回答是正确的 另外,如果您需要将数据从Rally拉入Excel,最好的选择是Rally Excel附加模块: 由于您提到VBA,您可能正在努力在Excel中构建一些自动化,而Excel加载项不支持这些自动化。VBA有一个alpha级别的Rally Rest工具包。它为您处理身份验证和Rest序列化/反序列化,因此可以减轻您的一些编码工作 它是非官方的,不受Rally支持,但可能值得尝试。由于它不受支持,因此如果遇到问题,Rally无法帮助您解决。您必须根据VBA工具包重构自己的代码,以获取所需的数据:
这不是响应的问题,但看起来每个
循环的都在重复第一个缺陷。您可能需要在If…Else
块之前设置str
的值