您可以使用 QUERY_STRING 来完成此操作。
RewriteCond %{QUERY_STRING} username
RewriteCond %{REQUEST_URI} !^/home.html
RewriteRule .* /home.html/ [L,QSA]
您可以尝试
SecurityContextHolder.getContext().getAuthentication().getAuthorities();
查看当前用户(身份验证)是否已添加任何角色(权限)。无论您如何验证/授权用户,这都应该有效。
Spring security 是一个用于保护应用程序的出色框架。然而,对于比演示稍微复杂一点的事情,最好首先对基础知识有一个良好的“感觉”。在实施诸如基于 LDAP-DB 的解决方案之类的重要解决方案之前,请尝试了解所有内容如何协同工作。一开始可能需要一些时间,但肯定会有回报。
使用属性是访问局部变量的最佳实践。有关属性(以及获取/设置)的更多信息,请参阅 MSDN 属性文章< /a>
摘录如下:
“get 关键字在属性或索引器中定义一个访问器方法,用于检索属性或索引器元素的值”
它会检索值,因此您需要使用 return
关键字。
“set 关键字定义属性或索引器中的访问器方法,用于分配属性或索引器元素的值。”
Set 分配值,因此您将使用 varX = value;
$.fn.MyFunction = function(param) {
if(arguments.length > 0)
return true;
else
return false;
}
我建议您查看我之前的回答来了解关闭问题如何构建 JSON 对象以发送到 AJAX WebService? 和 如果 ContentType 不是 JSON,我可以从 .asmx Web 服务返回 JSON 吗?
正确的代码应如下所示
[WebMethod]
[ScriptMethod (ResponseFormat = ResponseFormat.Json)]
public EntityLayer.TestPage1 GetData(int id)
{
TestPage1 test = TestPage1.GetData(id).SingleOrDefault();
return test;
}
,
var myData = 5;
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "WebService.asmx/GetData",
//data: {id:JSON.stringify(myData)},
data: JSON.stringify({id:myData}),
dataType: "json",
success: function(response){
alert("UserName=" + response.d.UserName +
", FirstName=" + response.d.FirstName +
", MiddleName=" + response.d.MiddleName+
", LastName=" + response.d.LastName);
}
})
其中 JSON.stringify
是脚本 json2.js 中的函数,您可以从 http://www.json.org/js.html。
如果 id
值是整数 JSON.stringify(myData)
与 myData
相同,但对于所有更复杂的示例,我强烈建议您使用此功能。
从代码中您还可以看到,Web 方法的所有结果都将保存在属性 d
中,因此您应该使用例如 response.d.FirstName
语法来访问名字。
更新:如果是 HTTP GET,data
参数应为 {id:JSON.stringify(myData)}
。对于 HTTP POST:JSON.stringify({id:myData})
我发现错误我没有提到收件箱。所以事件没有触发,因为我的项目事件在收件箱上:)
我承认我通常使用 2 个重定向来让这样的东西发挥作用。
首先,创建您自己的 registration/login.html
页面。您可以复制并粘贴 身份验证文档 使过程更容易一些。但是,不要使用上下文中的动态 '{{ next }}
变量,而是硬连线 next 的值以转到登录用户的通用登陆视图
<input type="submit" value="login" />
<input type="hidden" name="next" value="/gallery/" />
然后,在您映射的视图中到 /gallery/
URL,从请求中提取 User 对象(因为用户现在将登录,特别是如果图库视图包含在 @permission_required
中或@login_required
装饰器。使用该视图重定向到适当的用户特定的图库页面:
@login_required
def gallery(request):
url = '/gallery/%s/' % request.user.username
return HttpResponseRedirect(url)
a
仍然是一个字符串数组,但是是一个字符数组。
a == ["foo", "", "", "bar", "baz"]
a.join("") == "foobarbaz"
a.join("").split("") == ["f", "o", "o", "b", "a", "r", "b", "a", "z"]
我不知道这段代码的目的。
出于绝望,我将所有显卡设置重置为默认值,现在一切都神奇地修复了。知道哪个设置修复了它会很有趣。
关系数据库不保证顺序。
Django 也无法做出保证,因为它取决于底层关系数据库。
如果您想要特定的排序,则必须通过提供某种序列号来实现该特定的排序。
通常 order_by 最简单,因为它是查询集的一部分。请参阅 http://docs.djangoproject.com/ en/1.2/ref/models/querysets/#order-by-fields
最快的方法是创建一个列表并在视图函数中使用sorted
。
object_list = sorted( some_query_set, key=lambda o: o.some_field )
或者
object_list= list( some_query_set )
object_list.sort( key=lambda o: o.some_field )
其中任何一个都会非常快。
您是否依赖 4.0 的任何特定内容?
如果您调用 MSBuild 4.0,您将获得 4.0 工具。如果您调用 MSBuild 3.5,您将获得 3.5 工具(这正是您想要的,因为您显然托管在 2.0 CLR 中)。
另一种选择是将 4.0 CLR 放在您的 Web 服务器上。如果未打开,则您的信息流中不应该有任何 4.0 目标内容。
Are you reliant on anything 4.0 specific?
If you invoke MSBuild 4.0, you'll get 4.0 tools. If you invoke MSBuild 3.5, you'll get 3.5 tools (which is what you want as you're clearly hosting in a 2.0 CLR).
The other option is to put the 4.0 CLR on your web server. If that's not open, you shouldnt have any 4.0 targetted stuff in your stream.
VS.NET 2010/MSBUILD 可以为 .NET 3.5 SP1 生成 XmlSerializers 吗?