Spanish Llamadas a Web services en Basic 4 Android.

k1988

Member
Licensed User
Longtime User
HttpUtils es una librería que "facilita" en buena medida las llamadas a web services... o eso es lo que se menciona. Pero en los ejemplos proporcionados no ayudan a alguien que inicia con la librería.

Mi problema es el siguiente:

Tengo un web service que acepta como parametro un string y regresa una cadena de Strings.

1.- Como llamo a mi web service?
2.- Donde declaro y envió mi peticion?
3.- Como obtengo una lista de strings o de cualquier objeto?

Espero pronta respuesta, si es posible un codigo de ejemplo mucho mejor.
Gracias
 

gemasoft

Member
Licensed User
Longtime User
Webservice



Bueno yo hice un WEBSERVICE solicitando un string y devolviendo datos en json.

En este ejemplo.. el webservice envia una cadena (query) en forma de un formulario HTTP POST.
Fijate los parametros de initializepost2.. dice query.getbytes("UTF8") envia los bytes de query que es el string, previo de convertirlo a UTF8

Sub executeremotequery(query As String)
Dim req As HttpRequest
req.InitializePost2("http://192.168.0.75:81/queryweb.php",query.GetBytes("UTF8"))
hc.Execute (req,1)

End Sub



El programa php.. lee eso de la siguiente forma:


$query = file_get_contents("php://input");

Con esto tenes en $query el resultado.

----------------------------------------------------------------

Para enviar datos en el php ponemos en $datoenviar el resultado que buscamos:

print json_encode($datoenviar);

Y en el programa de android:

Sub hc_ResponseSuccess (Response As HttpResponse, TaskId As Int)
ProgressDialogShow("Mostrando Información Solicitada")
Dim res As String
res = Response.GetString("UTF8")
Log("Response from server: " & res)
Dim parser As JSONParser
parser.Initialize(res)

Dim dato As List
dato= parser.NextArray

For i =0 To dato.Size-1
Dim m As Map
m=dato.Get(i)

en m estan los datos recibidos.-

Espero te sirva.. saludos.-

Gabriel Giani Moreno
GEMASOFT
Argentina
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…