10

iOS で User-Agent を変更しようとしていますが、カスタム User-Agent を追加すると、アプリ名を含む既存の User-Agent に追加されます。

これは私が使用しているコードです:

NSMutableURLRequest *request = [client requestWithMethod:@"POST" path:endpoint parameters:nil];
    [request addValue:@"MyUserAgent (iPhone; iOS 7.0.2; gzip)" forHTTPHeaderField:@"User-Agent"];

User-Agent は次のように表示されます。

MyAppName/1.0 (iPhone; iOS 7.0.2; Scale/2.00),MyUserAgent (iPhone; iOS 7.0.2; gzip)

アプリ名がユーザー エージェントに自動的に追加されるため、これは不可能である可能性があることを読みましたが、ユーザー エージェントを完全にカスタマイズすることができた別の同様のアプリを見てきました。

4

1 に答える 1

22

デフォルトのユーザー エージェントをオーバーライドするには、setValue:forHTTPHeaderField:代わりに を使用しますaddValue:forHTTPHeaderField:。例えば:

[request setValue:@"MyUserAgent (iPhone; iOS 7.0.2; gzip)" forHTTPHeaderField:@"User-Agent"];
于 2013-10-10T14:30:13.400 に答える