我有一個小的http C++ lib,它基本上是一個圍繞libcurl
的薄包裝。我使用這個庫訪問網站(例如登錄,檢查/下載東西,如發票等)。在我最近的iOS項目中,我也試圖使用這個libcurl
包裝來訪問一個網站(登錄,閱讀消息,發送消息,其基本上是一個消息應用程序)。然而,我無法工作的一件事是cookies。我的預期行爲是,我的iOS應用程序(即libcurl
)在登錄到網站後存儲cookie,以便應用程序無需在每次打開應用程序時都登錄。iOS上的libcurl + cookie
爲了達到這個目的,我嘗試將CURLOPT_COOKIEFILE
和CURLOPT_COOKIEJAR
選項設置爲libcurl
會話句柄。我的理解是,我應該將這些選項設置爲相同的文件路徑,以便libcurl
能夠加載和存儲Cookie。
我將此路徑設置爲我的iOS沙盒文檔目錄的完整文件路徑。
但是,似乎cookie文件從不創建,因此預期的行爲將不起作用。
是否有什麼特別的考慮,或者任何人都可以給我提示我可能做錯了什麼?
我使用這個版本的libcurl
在iOS上:https://github.com/sinofool/build-libcurl-ios
應該工作。你的應用程序是否有權讀取/寫入文件?啓用VERBOSE模式並查看libcurl是否告訴你任何事情。請注意,在關閉簡單句柄之前,libcurl不會寫入任何cookie文件。 –
是的,應用程序有權限,我也下載/保存圖像在同一目錄中。 也許結束會是一個問題,虐待檢查。 – user826955
似乎工作。我明確地關閉句柄和app關機/背景,現在寫入cookie文件。它也重新打開,並在重新啓動後重復使用:) 如果您將答案添加爲回覆,我可以接受它。 – user826955