hongyangAndroid / wanandroid

玩Android网站 -- 努力做一个优质的Android站点
http://www.wanandroid.com/
Apache License 2.0
588 stars 55 forks source link

收藏文章成功后,该文章的 collect 字段仍为 false #57

Open mrqinshou opened 6 years ago

mrqinshou commented 6 years ago

已做 Cookie 持久化,收藏接口也成功调用,,调用我的收藏接口能看到已收藏的文章,但是在请求首页文章,已收藏的文章的 collect 字段仍为 false.

hongyangAndroid commented 6 years ago

建议做如下测试,在首页收藏一篇文章:

image

然后访问,http://www.wanandroid.com/article/list/0/json

image

通过浏览器即可验证接口。

rcj60560 commented 6 years ago

@mrqinshou 我也遇到这样问题,浏览器我也试过了 是我方式不对吗?我在确认下

hongyangAndroid commented 6 years ago

@rcj60560 注意下域名 www.wanandroid.com or wanandroid.com 二选1.

rcj60560 commented 6 years ago

@hongyangAndroid 确实 是域名问题www.wanandroid.com 是可以的 3q

liguangze commented 5 years ago

@rcj60560 你好,你说的域名是什么意思,我也碰到总是false的情况

rcj60560 commented 5 years ago

@liguangze 看你楼上回答

liguangze commented 5 years ago

@rcj60560 没有看明白, www.wanandroid.com 或者wanandroid.com

比如收藏接口是这个 https://www.wanandroid.com/lg/collect/'+id+'/json 或者 https://wanandroid.com/lg/collect/'+id+'/json 这个意思吗,可这两个都不行

rcj60560 commented 5 years ago

@liguangze 具体我戒不太清楚了,应该就是域名问题 好像是带www跟不带的区别 你多试试,然后看看collect字段

liguangze commented 5 years ago

好的,谢谢了

lwcla commented 5 years ago

我这也是这样, www.wanandroid.com 或者wanandroid.com来回试了都不行。。不晓得是哪里弄错了。。

phoenixsky commented 5 years ago

我这边测试,在postman中 重新登录下就好了. 应该是登录引发的问题

Vic-wkx commented 3 years ago

我今天也遇到这个问题,后来发现是我调获取文章的接口时没有传 Cookie 导致的,没有用户的登录信息,后台当然不知道文章是否已被这个用户收藏,在请求 Head 里添加上 Cookie 信息就好了。

虽然题主说已做 Cookie 持久化,但希望能帮到和我遇到同样问题的人

hongyangAndroid commented 3 years ago

感谢 @rcj60560

收藏不一致可能的原因有:

  1. 域名混用,使用了 www.wanandroid.com 和 wanandroid.com 混用,这个会导致收藏状态不同步,主要原因是收藏的文章都依赖session_id存储在内存中,两个域名对应的session_id不同。 后续我想办法其中一个域名重定向到另一个域名。

  2. 不同设备,PC端收藏,移动端查看,相同的问题,都是session_id不同导致的。

  3. 再有可能,就是程序bug了,大家可以详细描述下遇到的问题。

不过收藏的文章都做了持久化同步到数据库了,每次重新登录会重新同步到内存,所以重新登录文章收藏状态一定会正确。

ikakaxi commented 1 year ago

我也遇到了这个问题,查了半天,我还以为是我写的有问题,cookie也做了持久化