使用NSURLConnection進(jìn)行重定向

使用NSURLConnetion類的NSURLConnectionDataDelegate中的代理方法

- (nullable NSURLRequest *)connection:(NSURLConnection *)connection willSendRequest:(NSURLRequest *)request redirectResponse:(nullable NSURLResponse *)response

創(chuàng)建NSURLConnection對(duì)象發(fā)Request

    NSURL *url = [NSURL URLWithString:@"http://c.snnd.co/api/v4/click?campaign_id=4410534&publisher_id=52&rt=170401034908&_po=4f6801b69d272e96bbb920659a2f805b&_mw=p&_c=972&_cw=c&_ad=1288&publisher_slot=260&sub_1=pst2977485&pub_gaid=&pub_idfa=ADB6E76C-6B91-455B-81BE-DB884CC17818&pub_aid=&sub_2=695-669-773_33_0.300_20131822574410534260_iOS_1491019272&sub_3=Y29tLmdtZWRhbC5nb2xkZ21lZGFsKG5hdDMp_US_hcvr.ecpm5_i-1.5.3___ADB6E76C-6B91-455B-81BE-DB884CC17818&ch=pst"];
    NSMutableURLRequest *quest = [NSMutableURLRequest requestWithURL:url];
    quest.HTTPMethod = @"GET";
    NSURLConnection *connect = [NSURLConnection connectionWithRequest:quest delegate:self];
    [connect start];
- (nullable NSURLRequest *)connection:(NSURLConnection *)connection willSendRequest:(NSURLRequest *)request redirectResponse:(nullable NSURLResponse *)response{

    NSHTTPURLResponse *urlResponse = (NSHTTPURLResponse *)response;

    NSLog(@"%ld",urlResponse.statusCode);
    NSLog(@"%@",urlResponse.allHeaderFields);
    NSDictionary *dic = urlResponse.allHeaderFields;
    NSLog(@"%@",dic[@"Location"]);
    return request;
}

控制臺(tái)輸出如下:request 是你要發(fā)送的請(qǐng)求 urlResponse.statusCode 則是請(qǐng)求的狀態(tài)碼,302則是重定向 。

urlResponse.allHeaderFields中保存著http的頭信息:
2017-04-01 14:14:13.923 URL302Demo[16338:587888] 302
2017-04-01 14:14:13.924 URL302Demo[16338:587888] {
    "Cache-Control" = "no-store, no-cache, must-revalidate, max-age=0";
    Connection = "keep-alive";
    "Content-Type" = "text/html; charset=UTF-8";
    Date = "Sat, 01 Apr 2017 06:14:13 GMT";
    Expires = "Thu, 01 Jan 1970 00:00:00 GMT";
    Location = "https://itunes.apple.com/us/app/star-wars-galaxy-of-heroes/id921022358";
    Pragma = "no-cache";
    Server = nginx;
    "Transfer-Encoding" = Identity;
}
2017-04-01 14:14:13.925 URL302Demo[16338:587888] https://itunes.apple.com/us/app/star-wars-galaxy-of-heroes/id921022358
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,564評(píng)論 19 139
  • 常用類 NSURL:請(qǐng)求地址 NSURLRequest:一個(gè)NSURLRequest對(duì)象就代表一個(gè)請(qǐng)求,它包含的信...
    JonesCxy閱讀 1,060評(píng)論 0 1
  • 1. 網(wǎng)絡(luò)基礎(chǔ)TCP/IP HTTP基于TCP/IP協(xié)議族,HTTP屬于它內(nèi)部的一個(gè)子集。 把互聯(lián)網(wǎng)相關(guān)聯(lián)的協(xié)議集...
    yozosann閱讀 3,609評(píng)論 0 20
  • JSON JSON和XML都是需要解析的 JSON是一種輕量級(jí)的數(shù)據(jù)格式,一般用于數(shù)據(jù)交互服務(wù)器返回給客戶端的數(shù)據(jù)...
    JonesCxy閱讀 2,007評(píng)論 2 10
  • /*--------------------------- 01 HTTP請(qǐng)求 -----------------...
    藍(lán)心兒的藍(lán)色之旅閱讀 2,221評(píng)論 0 4

友情鏈接更多精彩內(nèi)容