我有一个MVC 5网站,其本地化路由定义为
routes.MapRoute(
name: "Default",
url: "{culture}/{controller}/{action}/{id}",
defaults: new { culture = CultureHelper.GetDefaultCulture(), controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
默认文化导致的位置"en-US".
启动时出现问题我必须使用LoginPath属性定义登录URL,该属性设置一次并且它将始终使用提供的值,例如默认文化,如果"/ en-Us/Account/Login"是指定值.然后我尝试使用UrlHelper类,希望体验一些魔力,但结果显然是一样的:
var httpContext = HttpContext.Current;
if (httpContext == null) {
var request = new HttpRequest("/", "http://example.com", "");
var response = new HttpResponse(new StringWriter());
httpContext = new HttpContext(request, response);
}
var httpContextBase = new HttpContextWrapper(httpContext);
var routeData = new RouteData();
var requestContext = new RequestContext(httpContextBase, routeData);
UrlHelper helper = new UrlHelper(requestContext);
var loginPath …Run Code Online (Sandbox Code Playgroud) 我一直在阅读很多关于这个主题的内容,但我发现的都是过时的或部分的答案,这对我来说并没有那么多帮助,实际上让我更加困惑.我正在编写一个Rest API(Node + Express + MongoDB),它可以通过Web应用程序(托管在与API相同的域上)和Android应用程序访问.
我希望API只能由我的应用程序访问,并且只能由授权用户访问.我还希望用户能够仅使用他们的Facebook帐户进行注册和登录,并且我需要能够访问一些基本信息,如姓名,个人资料照片和电子邮件.
我想到的一个可能的情况是:
这有意义吗?这种方法是否有任何我遗漏的宏观安全漏洞?我使用MongoDB来存储这些信息的一个问题是,使用旧令牌,集合很快就会变得臃肿.从这个意义上来说,我认为最好使用Redis的过期策略为1小时,以便Redis自动删除旧信息.