2011-06-16 35 views
3

我正在通过HTTP访问API并使用ASIHTTPRequest。要访问API,我送额外的头,我有以下补充:在使用ASIHTTPRequest重定向时追加原始标题

[request addRequestHeader:@"Access-Key" value:@"1234"]; 

这些头必须与每个请求一起发送。当我重定向时,这些标题会丢失,所以我想再次设置它们。在重定向请求执行之前,是否有可能再次设置它们?当我执行 - (void)请求时:(ASIHTTPRequest *)请求willRedirectToURL:(NSURL *)newURL方法,在调用此委托函数后请求被取消。这是一个错误吗?我正在使用版本v1.8.1-8 2011-06-05。

感谢您的帮助!

回答

3

我可以解决这个问题。国际海事组织的方法的命名有点混乱。当你实现- (void)request:(ASIHTTPRequest *)request willRedirectToURL:(NSURL *)newURL时,Method被调用,但是在请求没有被重定向之后,我被假定为。你必须自己重定向请求:

- (void)request:(ASIHTTPRequest *)request willRedirectToURL:(NSURL *)newURL { 
    // modify request here, e.g. set request headers again... 
    [request redirectToURL:newURL]; 
} 

感谢您阅读我的问题,希望这可以帮助其他人。