1

我的应用程序允许多个用户登录和注销。我们的服务器使用典型的 REST API。我正在通过 curlCommandString 监控 MKNetworkKit 输出。

我将使用一个帐户登录,进行一些查询(例如,获取资产列表)......效果很好。

然后我将注销并使用其他帐户登录。我将发出相同的请求,但得到的结果就像第一个用户登录一样(来自第一个用户的朋友列表)。

但是,当我执行 MKNetworkKit 打印到控制台(在我自己的终端中)的 CURL 命令时,服务器会返回一个空列表,就像它应该的那样。这是 MKNetworkKit 持有一些缓存或其他东西的证据。

这是一个典型的过程:

1.) 使用账户 a 登录并检索资产(该用户有 20 个资产,MKNetwork Kit 返回 20 个): // 用户 1 的 curl 输出:

curl -X GET -H "X-Auth-Token: 96cg7oH8LDDPYS......" "http://myserver/api/v3/assets?date=2013-07-02T14%3A49%3A08-0700"

此 curl 命令返回 20。

2.) 注销:

  • 销毁代币的存储
  • 取消 MKNetworkKit 的所有操作
  • MKNetworkKit 的空缓存
  • 销毁 MKNetworkKit 的实例

3.) 使用账户 B 登录并检索资产列表(此用户没有资产,但 MKNetworkKit 返回 20) // 用户 2 的 CURL 输出:

curl -X GET -H "X-Auth-Token: 3HwN15xJUzKDPr......" "http://myserver/api/v3/assets?date=2013-07-02T14%3A49%3A08-0700"

这个 curl 命令不返回任何资产,就像我期望的那样。

我做了什么来关闭缓存?看来它应该默认关闭。我在 MKNetworkKit 中放置了一个断点,以确保 isCachingEnabled 返回 false(我从未将其设置为 on)。

我是否错过了注销过程中的某个步骤?

4

0 回答 0