Я пытаюсь обойти историю обновления Power BI, но я получаю возврат 401, я уже освободил все разрешения для приложения.
Я могу сгенерировать токен нормально, но когда я пытаюсь получить группы, я получаю «Несанкционированный доступ», у вас есть идея, что мне нужно проверить?
мой код
getData("https://api.powerbi.com/v1.0/myorg/groups").ToString
Public Function getToken() As String
Dim objs As RootObject
Dim cliente = New RestClient("https://login.microsoftonline.com/00000000/oauth2/token")
Dim req = New RestRequest()
req.Method = Method.POST
req.Parameters.Clear()
req.AddHeader("Content-Type", "application/x-www-form-urlencoded")
req.AddParameter("grant_type", "client_credentials", ParameterType.GetOrPost)
req.AddParameter("client_id", "0000000", ParameterType.GetOrPost)
req.AddParameter("client_secret", "000000", ParameterType.GetOrPost)
req.AddParameter("resource", "https://analysis.windows.net/powerbi/api", ParameterType.GetOrPost)
Dim resposta = cliente.Execute(req)
Dim content = resposta.Content.ToString
objs = JsonConvert.DeserializeObject(Of RootObject)(content.ToString)
Dim token = objs.access_token
Return (token.ToString)
End Function
Private Function getData(ByVal url As String) As String
Dim powerBIApiUrl As String = url
Dim token As String = getToken()
Dim request As HttpWebRequest = TryCast(System.Net.WebRequest.Create(powerBIApiUrl), System.Net.HttpWebRequest)
request.KeepAlive = True
request.Method = "GET"
request.ContentLength = 0
request.ContentType = "application/json; charset=utf-8"
request.Headers.Add("Authorization", String.Format("Bearer {0}", token))
Using httpResponse As HttpWebResponse = TryCast(request.GetResponse(), System.Net.HttpWebResponse)
Using reader As StreamReader = New System.IO.StreamReader(httpResponse.GetResponseStream())
Dim responseContent As String = reader.ReadToEnd()
Return responseContent.ToString
End Using
End Using
End Function