thinkjs icon indicating copy to clipboard operation
thinkjs copied to clipboard

新请求直接设置Session内容会失败

Open yhanwen opened this issue 8 years ago • 8 comments

DESC

ENV

OS Platform: Mac

Node.js Version: 6.10

ThinkJS Version: 3

code

this.session('key', {content});

more description

登录接口,用CURL直接测试,会发现session要保存的内容没有存到redis里(或file里,看了一下源码两边逻辑一样),问题应该出在对fresh的判断这块


    if(this.options.fresh || this.status === -1){
      return this.initPromise = Promise.resolve();
    }

yhanwen avatar Oct 01 '17 09:10 yhanwen

session 是异步操作,前面有加 await 么?

welefen avatar Oct 01 '17 23:10 welefen

有的,如果请求已存在session的cookie的时候是没有问题的

yhanwen avatar Oct 01 '17 23:10 yhanwen

@yhanwen 看下请求返回的时候有没有设置 cookie

welefen avatar Oct 09 '17 07:10 welefen

No feedback, close.

lushijie avatar Nov 17 '17 10:11 lushijie

不好意思,之前忘了回复,这两天又掉这个坑了 请求回来是有设置cookie的,但在redis里看并没有存数据

yhanwen avatar Nov 21 '17 15:11 yhanwen

https://github.com/thinkjs/think-session-redis/pull/1 提了个PR解决了一下 @welefen

yhanwen avatar Dec 14 '17 01:12 yhanwen

@yhanwen https://github.com/thinkjs/thinkjs/issues/997 可以帮我看一下这个issues吗?这个问题跟你遇到的可能很类似,我用了think-session-mysql。

wurining avatar Dec 14 '17 03:12 wurining

@yhanwen 我也遇到了这个问题,session配置里面我一开始改成了长度256,后来改回32就可以了。。估计有可能是这个问题 Uploading image.png…

RonnieDuck avatar Sep 17 '18 06:09 RonnieDuck