好吧,我终于不得不在这里创建一个帐户。多年来一直在使用它,并且经常在这里找到我的答案,但这次不是。好吧,我实际上发现了很多有类似问题的人,但他们的解决方案都没有帮助我。
我已经开始了一个新的 MVC3 项目,所以到目前为止它非常简单。我以前做过一些,所以我有点知道我在做什么(但不完全清楚,很明显,为什么还要在这里;-)
我的问题显然是一个相当普遍的问题:一个请求启动一个新的会话,即使用户已经有一个。
最令人沮丧的部分是,它在我的托管服务上完美运行,但在本地主机上被破坏了。
我做了很多事情来解决这个问题:
- 我的计算机名称中没有下划线。
- Session 包含自定义数据(该错误仅在用户登录后发生)。
- 我在 web.config 中添加了以下内容(hmpf,猜你必须假设 gt / lt 字符):
http协议 自定义标题 清除 / 添加名称=“访问控制允许来源”值=“*”/ /customHeaders /http协议
这也是:
模块 runAllManagedModulesForAllRequests="false"/
使用 InProc sessionstate,我尝试过使用“cookieless”的真假。
- 我的主机文件不包含任何关于 localhost 的内容。
嗯。看看这个列表,我确定我遗漏了一些。有些也是故意的,因为他们是绝望的(是的,甚至比上面的还要多),并且出生于绝望。
如前所述,这特别令人不安,因为它适用于我的主机 - 我需要在开发服务器(VS2010)上调整一些配置设置吗?
我一直在假设问题是由于跨域安全引起的(它认为我来自另一个域)。
失败发生在这个请求上:
url: 'http://localhost:50396/moody/changeBuilding/' + elem.selectedIndex,
它是我与 jQuery.ajax 函数一起使用的选项数组的一部分。
我在上传到主机时更改了域,但只有 localhost:port 部分,应用程序中的其他所有内容都是相同的。
我已经为此撞了 2 天了,并且会错过我的考试 :-( 不过,我决心把这 6 英尺深埋在地下。
我将非常感谢任何和所有的建议!