Visual Basic y solicitud web Json.net
Básicamente, lo que intento hacer es crear un programa que enumere la información del juego para League of Legends ... utilizando su API para extraer datos. cómo funciona si busca allí nombre de usuario y devuelve un número entero vinculado a esa cuenta, luego usa ese número entero para buscar toda la información de esa cuenta, nivel de cuenta EG, ganancias, pérdidas, etc. Me he encontrado con un problema que parece que no puedo resolver ... Por favor, no es que sea muy nuevo en Json.net, así que tengo poca experiencia en trabajar con él ... A continuación se muestra cómo se encuentra la búsqueda de la ID de usuario. La primera sección es la Nombre de usuario Menos Cualquier espacio en el nombre del siguiente es el ID, que es la información que necesito.
{"chucknoland":{"id":273746,"name":"Chuck Noland","profileIconId":662,"summonerLevel":30,"revisionDate":1434821021000}}
Debo declarar que las variables son incorrectas para obtener los datos, ya que todo lo que hago devuelve 0.
Estas son las siguientes clases en las que tengo que almacenar el ID
Public Class ID
Public Shared id As Integer
Public Shared name As String
End Class
Mirando un ejemplo anterior visto aquíEjemplo de trabajo simple de json.net en VB.net
Fueron capaces de resolver el problema haciendo una clase contenedor con todo lo que contenía. Mi problema es que los datos que busco siempre cambian. El primer conjunto siempre será diferente al "Chucknoland" que se muestra en el ejemplo. ¿Alguien puede explicarme cómo puedo extraer esta información?
Tenga en cuenta que las variables rRegion tienen el valor de en qué servidor está allí, Chuck Noland está en OCE y sSearch es el nombre de usuario. Debido a problemas con las claves API, tuve que eliminar la clave API del código ... Pero la URL devuelve el Json proporcionado.
'URL string used to grab Summoner ID
jUrlData = "https://oce.api.pvp.net/api/lol/" + rRegion + "/v1.4/summoner/by-name/" + sSearch +
' Create a request for URL Data.
Dim jsonRequest As WebRequest = WebRequest.Create(jUrlData)
'request a response from the webpage
Dim jsonResponse As HttpWebResponse = CType(jsonRequest.GetResponse(), HttpWebResponse)
'Get Data from requested URL
Dim jsonStream As Stream = jsonResponse.GetResponseStream()
'Read Steam for easy access
Dim jsonReader As New StreamReader(jsonStream)
'Read Content
Dim jsonResponseURL As String = jsonReader.ReadToEnd()
jUrlString = jsonResponseURL
esta es la solicitud que tengo para obtener la información, y este es el código que intenté usar para mostrar la ID de ese json.
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim obj As ID
obj = JsonConvert.DeserializeObject(Of ID)(jUrlString)
MsgBox(obj.id)
End Sub
¿Alguien puede explicar cómo puedo hacer para que esto funcione?