更改用户代理并删除应用程序名称并默认iOS

时间:2013-10-10 13:48:51

标签: ios user-agent nsurlrequest

我正在尝试更改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"];

用户代理如下所示:

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

我已经读过,这可能是不可能的,因为App名称会自动添加到User-Agent中,但是我看到了另一个类似的应用程序,它已经设法完全自定义了User-Agent。

1 个答案:

答案 0 :(得分:22)

要覆盖默认用户代理,请使用setValue:forHTTPHeaderField:代替addValue:forHTTPHeaderField:。例如:

[request setValue:@"MyUserAgent (iPhone; iOS 7.0.2; gzip)" forHTTPHeaderField:@"User-Agent"];