iOS 上的 libcurl + cookie
libcurl + cookies on iOS
我有一个小的 http C++ 库,它基本上是 libcurl
的薄包装。我正在使用这个库访问网站(例如登录,check/download 东西,比如发票等)。
在我最新的 iOS 项目中,我也在尝试使用这个 libcurl
包装器来访问网站(登录、阅读消息、发送消息,它基本上是一个信使应用程序)。但是,我无法开始工作的一件事是 cookies。我的预期行为是,我的 iOS 应用程序(libcurl
,即)在登录网站后存储 cookie,这样应用程序就不需要在每次打开时都登录。
为此,我尝试将 CURLOPT_COOKIEFILE
和 CURLOPT_COOKIEJAR
选项设置为 libcurl
会话句柄。我的理解是,我应该将这些选项设置为相同的文件路径,以便 libcurl
能够加载和存储 cookie。
我将此路径设置为我的 iOS 沙箱文档目录的完整文件路径。
但是,似乎从未创建 cookie 文件,因此预期的行为不会起作用。
有什么特别需要考虑的吗,或者任何人都可以提示我可能做错了什么吗?
我在 iOS 上使用 libcurl
的这个版本:https://github.com/sinofool/build-libcurl-ios
那应该行得通!您的应用是否有权访问那里的 read/write 个文件?启用 VERBOSE 模式并查看 libcurl 是否告诉您任何信息。请注意,在您关闭 easy handle 之前,libcurl 不会写入任何 cookie 文件。
我有一个小的 http C++ 库,它基本上是 libcurl
的薄包装。我正在使用这个库访问网站(例如登录,check/download 东西,比如发票等)。
在我最新的 iOS 项目中,我也在尝试使用这个 libcurl
包装器来访问网站(登录、阅读消息、发送消息,它基本上是一个信使应用程序)。但是,我无法开始工作的一件事是 cookies。我的预期行为是,我的 iOS 应用程序(libcurl
,即)在登录网站后存储 cookie,这样应用程序就不需要在每次打开时都登录。
为此,我尝试将 CURLOPT_COOKIEFILE
和 CURLOPT_COOKIEJAR
选项设置为 libcurl
会话句柄。我的理解是,我应该将这些选项设置为相同的文件路径,以便 libcurl
能够加载和存储 cookie。
我将此路径设置为我的 iOS 沙箱文档目录的完整文件路径。
但是,似乎从未创建 cookie 文件,因此预期的行为不会起作用。
有什么特别需要考虑的吗,或者任何人都可以提示我可能做错了什么吗?
我在 iOS 上使用 libcurl
的这个版本:https://github.com/sinofool/build-libcurl-ios
那应该行得通!您的应用是否有权访问那里的 read/write 个文件?启用 VERBOSE 模式并查看 libcurl 是否告诉您任何信息。请注意,在您关闭 easy handle 之前,libcurl 不会写入任何 cookie 文件。