2013-10-10 18 views
10

我試圖更改iOS中的用戶代理,但是當我添加自定義用戶代理時,它會將其附加到包含我的應用程序名稱的現有用戶代理。更改用戶代理並刪除應用程序名稱和默認值iOS

這是我使用的代碼:

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) 

我讀過,如應用程序名稱是這也許是不可能的自動添加到用戶代理,但是我看到另一個類似的應用程序,我設法完全自定義用戶代理。

+0

這與無AFNetworking – YogevSitton

回答

21

要覆蓋默認用戶代理,請使用setValue:forHTTPHeaderField:而不是addValue:forHTTPHeaderField:。例如:

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

現貨,謝謝。這麼簡單的監督。 – Darren