我有一个专门针对eStreamChat (.Net的开源聊天室)的问题。在他们的网站上或者网上的任何例子上似乎没有太多的文档,所以如果有人能帮忙的话,那就太好了。我想问题就在我的大麻里。
到目前为止,我已经成功地下载和导入了这个项目,并设置了一个虚拟IIS目录,以便我可以从我自己的应用程序中使用它。我在我自己的网页上创建了一个链接,把我带到了他们的ChatRoom.aspx网页上。将我带到那里的链接是以所需的格式(例如:
http://localhost:10833/eStreamChat/ChatRoom.aspx?id=lowens×tamp=130425080917&hash=eb9fa849033cbf7b967ba472efb46363903f96dc页面加载,我可以看到聊天室,但我得到以下错误弹出:无法加入房间!散列无效!
为了达到这个目的,我遵循了本页:上的说明
我唯一不明白的一行是:,您可以从web.config文件中配置密钥,所以如果有人能解释我在web.config中应该做什么,可能会有所帮助。
正在抛出的错误来自RemoteAuthUserProvider.cs。以下是代码:
NameValueCollection hrefParams = HttpUtility.ParseQueryString(hrefUri.Query);
var calculatedHash = Miscellaneous.CalculateChatAuthHash(hrefParams["id"] ?? String.Empty,
hrefParams["target"] ?? String.Empty, hrefParams["timestamp"]);
if (hrefParams["hash"] != calculatedHash)
{
throw new SecurityException("Hash is invalid!");
}调试后:
hrefParams["hash"]是"eb9fa849033cbf7b967ba472efb46363903f96dc“这是
calculatedHash是"5129cf1cf65350a387ce53a2b0d31c960f9d96d3“
那为什么那个哈希不一样?
干杯
发布于 2013-04-25 20:00:28
在Web.config中的appSettings中需要一个值:
<appSettings>
<add key="AuthSecretKey" value="ENTER A VALUE HERE"/>
</appSettings>此值需要匹配网站上提供的单击方法中的secretKey,以便哈希匹配。
https://stackoverflow.com/questions/16222197
复制相似问题