Pergunta

Existe alguma maneira para falsificar o agente de usuário no Safari no iPhone?

Assim, por exemplo, você poderia criar um aplicativo no iPhone que tem o navegador Safari embutido, no entanto, qualquer site que o usuário visita com este navegador não sabe que estavam em Safari no iPhone, seria pensar que você está em algo como o Safari em um PC, ou até mesmo IE / FireFox.

Graças

Foi útil?

Solução

Sim, eu acho que você poderia mudar isso. Seria necessário um pouco de trabalho ao redor para fazê-lo funcionar.

  1. Você precisa gerenciar manualmente todas as solicitações. Ao fazer suas próprias solicitações de dados. Nestes dados pedido, pode adicionar um HTTPHeader para User-Agent que irá substituir os cabeçalhos padrão.

    NSMutableURLRequest * urlRequest = [[[NSMutableURLRequest alloc] initWithURL: requestURL] disparo automático];

    [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. Se você incorporar o navegador Safari Web em seu aplicativo você pode se inscrever para os seus métodos de delegado. Um deles irá notificar seu aplicativo que safari gostaria de carregar uma URL, este é onde você pegar esta carga e obter os dados de seu self.

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

    Agora você colocar o seu código aqui para fazer o carregamento de dados.

  3. Uma vez que os dados carregados. Dar-lhe a volta seqüência de dados para o webView. Tenho definir "baseURL: nil", mas você pode ter que definir isso corretamente para talvez o domínio correto para essa aplicação.

    [webView loadHTMLString: newString baseURL: nil]

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top