Ver Mensaje Individual
  #3 (permalink)  
Antiguo 12/03/2012, 23:09
SolisUNMSM
 
Fecha de Ingreso: enero-2011
Ubicación: lima-peru
Mensajes: 80
Antigüedad: 13 años, 10 meses
Puntos: 4
De acuerdo Respuesta: wcf rest envio de tildes y enies

Cita:
Iniciado por chcma Ver Mensaje
Hola SolisUNMSM,

Perdona que te moleste, por que no tenguna solución a tu problema, pero... viendo que dominas algo el tema de WCF con Android, me gustaría preguntarte si usas ese webservice con https, y si es así, como lo haces, por que yo lo intenté con HttpsTransportSE, pero me daba error.

¿Sabes algo del tema?, y... aprovechando, jeje... ¿Sabes algo de como meter autentificación por parte de Android?, Sé crear un WCF seguro, que pida usuario y clave, pero... no sabría como ponerlo en la llamada desde Android.

Si me pudieras orientar en alguno de los dos campos, te lo agradecería mucho, la verdad. Y, nuevamente te pido disculpas por haberte hecho entrar aqui, sin tener una respuesta a tu problema, de la cual, la verdad, no tengo ni idea.

Gracias.
(todo es segun investigue y me funciono) Si el servidor tiene un certificado reconocido por alguna entidad de certificacion como Verisign u otro , este deberia estar en el repositorio de certificados de tu dispositivo android , igual para los emuladores , hay una negociacion previa , entre la entidad-tu servidor- tu cliente(amdroid) , todo para usar una conexion segura , para lo cual solo debe indicar en el httpCLient que vas usar de ese tipo . como?

para usar https

HttpClient httpclient = new HttpClient();
GetMethod httpget = new GetMethod("https://www.verisign.com/");
try {
httpclient.executeMethod(httpget);
System.out.println(httpget.getStatusLine());
} finally {
httpget.releaseConnection();
}

MAS INFO : http://hc.apache.org/httpclient-3.x/sslguide.html

y para la auntetificacion


Código Javascript:
Ver original
  1. public class ClientAuthentication {
  2.  
  3.     public static void main(String[] args) throws Exception {
  4.         DefaultHttpClient httpclient = new DefaultHttpClient();
  5.         try {
  6.             httpclient.getCredentialsProvider().setCredentials(
  7.                     new AuthScope("localhost", 443),
  8.                     new UsernamePasswordCredentials("username", "password"));
  9.  
  10.             HttpGet httpget = new HttpGet("https://localhost/protected");
  11.  
  12.             System.out.println("executing request" + httpget.getRequestLine());
  13.             HttpResponse response = httpclient.execute(httpget);
  14.             HttpEntity entity = response.getEntity();
  15.  
  16.             System.out.println("----------------------------------------");
  17.             System.out.println(response.getStatusLine());
  18.             if (entity != null) {
  19.                 System.out.println("Response content length: " + entity.getContentLength());
  20.             }
  21.             EntityUtils.consume(entity);
  22.         } finally {
  23.             // When HttpClient instance is no longer needed,
  24.             // shut down the connection manager to ensure
  25.             // immediate deallocation of all system resources
  26.             httpclient.getConnectionManager().shutdown();
  27.         }
  28.     }
  29. }

MAS INFO : http://hc.apache.org/httpclient-3.x/...Authentication


...ahora si no.je son mas pasos pero me ayudo a comprender mas paso a paso lo que hace android .

te dara error de NO TRUSTED , para lo cual tienes tienes que darle el certifcado a; android tomandolo de tu server asi lA negociacion ya solo seria de los dos

son muchos pasos , te dejo el link donde esta explicados , son los que segui

http://blog.antoine.li/2010/10/22/an...-certificates/

..ALGO MAS , android para una nueva version esta haciendo un apquete especialmente para su SO , sobre en el httpClient , yo lo ise con el actual , ps no me habia enterado , la idea es la misma , aqui lo mencionan

http://android-developers.blogspot.c...p-clients.html


suerte .