entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

3votos

Estoy consumiendo un web service desde una app nativa de ios, anteriormente la dirección del web service era http, y me tenia que conectar a una vpn para poder consumirlo, para poder hacerlo publico hemos cambiado el web service de servidores y le hemos agregado un protocolo de seguridad (https), pero ahora intento consultar el web service y en la app nativa me retorna null, y probándolo en el navegador si se consume el Web Service y me retorna valores.

este es el código que utilizo para consumir el web service desde objective-c:

_urlConDatos = [NSString stringWithFormat:@"https://mhwfmobt.aeroman.com.sv:7003/AEPublicWS/webresources/login/%@/%@", _usuarioProp.text, _passProp.text];
jsonURL = [NSURL URLWithString: _urlConDatos];
NSLog(@"%@", jsonURL);
NSError *error;
jsonData = [[NSString alloc] initWithContentsOfURL:jsonURL encoding:NSUTF8StringEncoding error: &error];
NSLog(@"%@", jsonData);

3 Respuestas

1voto

Portal-P Puntos1160

Has verificado que el certificado sea seguro y este correctamente vinculado al dominio que consume la app?
Si en el navegador entra pero con advertencias objective-c no te aceptara la conexion porque no la considerara segura.

1voto

raul_quima Puntos160

Agrega al info.plist la siguiente informacion Xcode 6 en adelante:

    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true>
    </dict>

2votos

Jparrgam Puntos800

Hola,

Puedes utilizar esta librería,

https://github.com/AFNetworking/AFNetworking

ejemplo de GET Request

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager GET:@"http://example.com/resources.json" parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
    NSLog(@"JSON: %@", responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    NSLog(@"Error: %@", error);
}]; 

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta