Estoy creando un servidor en .NET y una aplicación cliente para Android. Me gustaría implementar un método de autenticación que envía el nombre de usuario y la contraseña al servidor y un servidor devuelve una cadena de sesión.
No estoy familiarizado con WCF, por lo que realmente agradecería su ayuda.
En Java, escribí el siguiente método:
private void Login()
{
HttpClient httpClient = new DefaultHttpClient();
try
{
String url = "http://192.168.1.5:8000/Login?username=test&password=test";
HttpGet method = new HttpGet( new URI(url) );
HttpResponse response = httpClient.execute(method);
if ( response != null )
{
Log.i( "login", "received " + getResponse(response.getEntity()) );
}
else
{
Log.i( "login", "got a null response" );
}
} catch (IOException e) {
Log.e( "error", e.getMessage() );
} catch (URISyntaxException e) {
Log.e( "error", e.getMessage() );
}
}
private String getResponse( HttpEntity entity )
{
String response = "";
try
{
int length = ( int ) entity.getContentLength();
StringBuffer sb = new StringBuffer( length );
InputStreamReader isr = new InputStreamReader( entity.getContent(), "UTF-8" );
char buff[] = new char[length];
int cnt;
while ( ( cnt = isr.read( buff, 0, length - 1 ) ) > 0 )
{
sb.append( buff, 0, cnt );
}
response = sb.toString();
isr.close();
} catch ( IOException ioe ) {
ioe.printStackTrace();
}
return response;
}
Pero en el lado del servidor hasta ahora no he descubierto nada.
Estaría muy agradecido si alguien pudiera explicar cómo crear una cadena de método apropiada Iniciar sesión (cadena de nombre de usuario, contraseña de cadena) con la configuración apropiada de App.config y la interfaz con la firma apropiada de [OperationContract] para leer estos dos parámetros del cliente y responder con cadena de sesión.
¡Gracias!