C# 第一个Twitter OAuth请求后会话丢失
使用ASP.NET MVC,会话存储在SQL数据库中(从来没有遇到过问题,也没有使用web场)。还可以使用Twitterizer2库。使用FirefoxC# 第一个Twitter OAuth请求后会话丢失,c#,model-view-controller,session,twitter,oauth,C#,Model View Controller,Session,Twitter,Oauth,使用ASP.NET MVC,会话存储在SQL数据库中(从来没有遇到过问题,也没有使用web场)。还可以使用Twitterizer2库。使用Firefox 第一次请求时,未打开任何浏览器实例。浏览器实例已启动 我们有简单的表单“在twitter上发布”和提交按钮共享 单击共享时,我们将消息存储在会话中,并重定向到Twitter的OAuth身份验证(在提交后) 我们验证OK并返回到我们的操作,在发布到Twitter之前,我们检查消息是否存储在会话中(并且它不是!-在Twitter重定向后它立即丢失)
有没有DEA?我想问一下,第一次没有cookie,你是如何维持会议的 我认为问题可能在于cookie设置过程。在几周前我也经历过类似的问题 问题是,当我请求请求令牌时,这个请求是内部HTTP请求(不是通过用户浏览器)。作为对此请求的响应,我获取请求令牌,然后在用户会话中设置它
$token = getRequestToken();
$_SESSION['token'] = $token;
但是,如果用户第一次访问我的站点时没有会话,他就没有会话cookie发送给我。在网站内部,我为他创建了一个会话,并将令牌存储在其中,但是,我没有向他发送包含cookie头的响应,以便他“接受”我的会话,而是重定向到提供者授权端点。这样,用户就不会得到会话cookie,当他返回时,他就像我的站点的新用户一样
这是发生在我身上的流程:
最诚挚的问候我想问一下,您第一次没有cookie时是如何维持会话的 我认为问题可能在于cookie设置过程。在几周前我也经历过类似的问题 问题是,当我请求请求令牌时,这个请求是内部HTTP请求(不是通过用户浏览器)。作为对此请求的响应,我获取请求令牌,然后在用户会话中设置它
$token = getRequestToken();
$_SESSION['token'] = $token;
但是,如果用户第一次访问我的站点时没有会话,他就没有会话cookie发送给我。在网站内部,我为他创建了一个会话,并将令牌存储在其中,但是,我没有向他发送包含cookie头的响应,以便他“接受”我的会话,而是重定向到提供者授权端点。这样,用户就不会得到会话cookie,当他返回时,他就像我的站点的新用户一样
这是发生在我身上的流程:
问候您检查请求和回调域是否相同
i、 e.您正在从localhost请求oauth并回调到127.0.0.1检查请求和回调域是否相同
i、 e.您正在从localhost请求oauth并回调到127.0.0.1您可以使用FireBug步骤4查看吗。当从Twitter返回时,请求头中是否发送了
AspNet\u SessionId
cookie?您可以使用FireBug步骤4进行查看。从Twitter返回时,AspNet\u SessionId
cookie是否在请求头中发送?