2014-10-29 148 views
0

我使用的API,我不控制使用301永久重定向時,它不應該。我需要我的NSURLConnection忽略它以前被永久重定向以供將來請求的事實。忽略301永久重定向與NSURLConnection

繼承人是Clarity的一個例子。我想連接到http://stupidapi.com/users/frank/profilepicture。它做了301重定向到http://profilepictures.stupidapi.com/52435346324其中有我正在尋找它的個人資料圖片。

因此,讓我們說,後來弗蘭克登錄到他的賬戶,並更改他的個人資料圖片。現在,當我想要新的個人資料圖片時,我會去http://stupidapi.com/users/frank/profilepicture,但由於我提出的第一個要求是301永久性重定向,它會將我發送回http://profilepictures.stupidapi.com/52435346324這是舊圖片。如果這是我第一次請求它會發送給我http://profilepictures.stupidapi.com/34535476557爲新的圖片。

我怎麼NSURLConnection的總是到圖像的最新版本?

我已經試過的NSURLRequest緩存策略設置爲NSURLRequestReloadIgnoringCache

request.cachePolicy = NSURLRequestReloadIgnoringCache;  

我也試着清除NSURLCache任何請求與

[NSURLCache sharedURLCache] removeAllCachedResponses]; 

做出無論至今合作過。謝謝你的幫助!

+0

那麼'[[NSURLCache sharedURLCache] removeCachedResponseForRequest:request]'? – 2014-10-29 17:27:21

+0

我會給它一個謝謝 – 2014-10-29 17:35:47

+0

試過了,結果相同。這樣的東西實際上由系統緩存嗎?這似乎即使我刪除我的應用程序並重新安裝它,我仍然被重定向到舊版本。 – 2014-10-29 17:37:47

回答

0

好了,所以我想出了一個解決方案的一個討厭的黑客,但我能拿出最好的。

指定每次發送請求給它時間不關心市值所以基本上原來的URL,我隨機設置的URL以大寫或小寫的特定部分的每個字母。

基本上而不是僅僅去http://stupidapi.com/users/frank/profilepicture我到http://stupidapi.com/users/FrAnk/profilepicture。如果我點擊一個沒有被緩存的圖片,那麼我會得到新的圖片。

對於我特殊的使用情況,這個工作起來不錯。