Pregunta

¿Hay alguna manera de burlar el agente de usuario en Safari en el iPhone?

Así, por ejemplo, debe crear una aplicación en el iPhone que tiene el navegador Safari incorporado, sin embargo, cualquier sitio web que el usuario visita con este navegador no sabrían que estaban en Safari en el iPhone, se podría pensar que está en algo como Safari en un PC, o incluso IE / Firefox.

Gracias

¿Fue útil?

Solución

Sí creo que se podría cambiar esto. Se requeriría un poco de trabajo en torno a conseguir que funcione.

  1. Usted tendría que administrar manualmente todas las solicitudes. Al hacer sus propias peticiones de datos. En esta solicitud de datos se puede añadir un HTTPHeader para la User-Agent, que anulará los encabezados predeterminados.

    NSMutableURLRequest * urlRequest = [[[NSMutableURLRequest alloc] initWithURL: requestURL] autorelease];

    [urlRequest setHTTPMethod: @"POST"];
    [urlRequest setHTTPBody: [nvpString  dataUsingEncoding:NSUTF8StringEncoding]];
    [urlRequest addValue:@"Your+User+Agent+String" forHTTPHeaderField:@"User-Agent"];
    receivedData = [[NSMutableData alloc] retain];
    [receivedData setLength:0];
    
    [NSURLConnection connectionWithRequest: urlRequest delegate: self];
    
  2. Si incrusta el navegador web Safari en su aplicación puede suscribirse a sus métodos de delegado. Uno de ellos le notificará a su aplicación que Safari quiere cargar una URL, aquí es donde se captura esta carga y obtener los datos de su auto.

    - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{
    

    Ahora usted pone su código en aquí para hacer la carga de datos.

  3. Una vez que los datos han cargado. Darle la cadena de datos de nuevo a la web View. He puesto "URLbase: cero", pero puede que tenga que configurar correctamente que esto tal vez el dominio correcto para esta aplicación.

    [web View loadHTMLString: newString URLbase: nil]

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top