我正在为我的网站开发私有消息功能,有没有办法从服务器获取推送通知,用户收到了新消息?
我所知道的唯一技术是不断通过ajax轮询服务器以查看是否有新消息,并在需要时重新加载信使窗口.
感谢您的任何反馈!
UPD:到目前为止,已确定以下方向:
在将用户密码发送到Web服务器之前,在客户端浏览器上对用户密码进行散列的最佳方法是什么,这样只有哈希值才会出现,而不是纯文本密码?
编辑:假设使用HTTP(不是HTTPS)
您必须分享哪些有用的字符串操作助手?
我曾经写过一个String.Format()的替代品,我发现它更加整洁:
public static class StringHelpers
{
public static string Args(this string str, object arg0)
{
return String.Format(str, arg0);
}
public static string Args(this string str, object arg0, object arg1)
{
return String.Format(str, arg0, arg1);
}
public static string Args(this string str, object arg0, object arg1, object arg2)
{
return String.Format(str, arg0, arg1, arg2);
}
public static string Args(this string str, params object[] args)
{
return String.Format(str, args);
}
}
Run Code Online (Sandbox Code Playgroud)
例:
// instead of String.Format("Hello {0}", name) use:
"Hello {0}".Args(name) …Run Code Online (Sandbox Code Playgroud) 如果我Thread.Sleep(x)在呈现HTTP响应时引入延迟,x那么将根据来自给定IP的请求的速率而改变:从请求率低时为零,并且如果请求一个接一个地跟随则逐渐增加.
这是防止DDOS的可行解决方案吗?
有什么弱点?
public class A { }
public class B:A { }
void foo()
{
A a = new B();
B b = a as B;
}
Run Code Online (Sandbox Code Playgroud)
对于给定的实例设置,将lock(a) 等同于lock(b)?
我的意思是,锁定是否相互排斥?如果我lock(a)在一个线程和lock(b)另一个线程中,我是否可以获得对B之前创建的单个实例的互斥访问权限?
我有使用cookie的身份验证逻辑.模型属性是从cookie初始化的,但只有在调用特定的控制器操作时才会执行此操作.我应该直接从控制器逻辑访问我的cookie还是让模型更加胖,并在模型中实现cookie保存/加载?
我得到了一个奇怪的Razor行为 - 渲染一个大约300个DIV的网页,每个用户信息,循环渲染后,CPU继续以100%的单核负载运行大约30秒.没有IO操作,内存利用率没有变化,只是燃烧CPU周期.
该页面是从数据库中渲染数据的300条记录.这不是数据库故障 - 我通过禁用数据库访问来检查它,用虚拟数据替换记录并获得相同的行为.页面在浏览器中呈现并显示,没有其他请求处于活动状态,因此服务器端代码(至少是我的代码)处于空闲状态.
UPD:仅在从Visual Studio中启动站点时才会出现此问题.无论它是在IIS Express还是IIS中托管.两者都运行.NET 4.5.1,MVC 5.1.2.当devenv未运行时打开同一站点会使问题消失.
任何人都可以建议 - 你是否经历过类似的问题以及你如何应对它,我怎样才能找出引起问题的代码片段?
解决了!这是浏览器链接! http://blogs.msdn.com/b/webdev/archive/2013/06/28/browser-link-feature-in-visual-studio-preview-2013.aspx 禁用它可以解决问题.
Razor视图引擎看起来很有前景,所以我认为在开发刚刚进入预览阶段的时候,贡献一些想法并编译Razor功能的愿望列表会很好.
您今天在Spark,Webforms或早期Razor版本中缺少哪些功能,并希望在Razor中实现?
UPD:为何关闭这个问题?使用这种媒体为Razor开发人员创建反馈循环有什么问题?