小编Fre*_*red的帖子

将访问令牌存储在客户端浏览器的会话存储中是否安全?

我正在 Web API 中使用基于令牌的身份验证来对用户进行身份验证。我正在使用客户端浏览器会话存储来存储访问令牌。这样做安全吗?我应该把它存放在哪里才能更安全。

$('#btnLogin').click(function() {
    $.ajax({
        // Post username, password & the grant type to /token
        url: '/token',
        method: 'POST',
        contentType: 'application/json',
        data:
            {
            username: $('#txtUsername').val(),
            password: $('#txtPassword').val(),
            grant_type: 'password'
        },
        //response(Access Token) stores inside session storage of Client browser.
        success: function(response) {
                sessionStorage.setItem("accessToken", response.access_token);
Run Code Online (Sandbox Code Playgroud)

oauth access-token asp.net-web-api

8
推荐指数
1
解决办法
8270
查看次数

锚点或按钮

我应该使用什么元素进行JavaScript操作?

执行播放/暂停/停止/新建/打开/保存/打印/关闭等操作.

<a id="play" href="#">Play</a>
<a href="#play">Play</a>
<button id="play" tabindex="0">Play</button>
<div id="play" role="button" tabindex="0">Play</div>
Run Code Online (Sandbox Code Playgroud)

我看到很多人用锚<a>href="#",但并不觉得很语义,感觉就像锚是指向一个资源,不为,做东西的动作的超链接.然后你必须用event.preventDefault(即return false)破解它.

我很少看到人们使用该<button>元素,但它不应该被用于什么?

html semantic-markup htmlbutton

7
推荐指数
2
解决办法
5003
查看次数

ControllerBase 中的 SignIn 和 SignOut 方法的用途是什么?

SignIn类中的和SignOut方法的用途是什么ControllerBase(由类继承Controller)。

这两个方法分别返回 aSignInResult和 a SignOutResult,两者都继承自基类ActionResult(实现了IActionResult)。

查找 和 的源代码,SignInResultSignOutResult会看到它们分别调用HttpContext.Authentication.SignInAsync()HttpContext.Authentication.SignOutAsync()

但我从未在任何地方见过这两种方法被使用过。如果您查看AccountController然后它使用 a 登录和退出ApplicationSignInManager,而不是上面提到的方法。

由于这些是ActionResult,它让我相信这些将被用作控制器中操作的返回值。

例如这样的事情:

public IActionResult SignIn()
{
    return SignIn(User, "Automatic");
}
Run Code Online (Sandbox Code Playgroud)

但这显然没有任何作用。它似乎没有登录用户,并且似乎没有向用户返回任何内容。我不确定要传递什么参数,但我找到了User(从HttpContext控制器中)。

那么这两种方法的目的是什么,又该如何使用呢?

asp.net-core-mvc

7
推荐指数
1
解决办法
3193
查看次数

$(document).on()在纯JavaScript中?

在jQuery中有.on()可以用作:

$(document).on('click', '.foo', function() { /* ... */ });
Run Code Online (Sandbox Code Playgroud)

这将侦听具有该类的所有DOM元素上的单击事件.foo.但是,这也会监听稍后添加到DOM的任何最终元素,因此它不等于:

var elements = document.getElementsByClassName('foo');
for (var element in elements) {
  element.addEventListener('click', function() { /* ... */ });
}
Run Code Online (Sandbox Code Playgroud)

我如何在纯JavaScript中执行此操作?我应该使用MutationObserver吗?如果是这样,那怎么样?如果没有,那又怎样?

javascript jquery dom addeventlistener mutation-observers

7
推荐指数
1
解决办法
6792
查看次数

碎片会导致脂肪活动吗?

最近我被赋予了构建一个类似于书的应用程序的任务.高级设计基本上是几个列表视图,显示章节,然后深入到主题列表然后到页面本身.还有许多其他列表类型的视图显示书签或文本搜索结果,并且有相当数量的动画,同时滑动一个片段和另一个片段.这是我第一次使用片段,虽然它们首先看起来是一个很好的封装UI功能,但我不禁想知道它们的使用是否会导致'胖'活动类,必须管理几个不同的片段,必须实现他们发布的几个接口.

作为一个示例显示一个Activity实现的接口:

public class NodeListActivity extends Activity implements 
        NodeListFragment.OnItemSelectedListener,
        SearchListFragment.OnItemSelectedListener,
        NodeFragment.OnLinkSelectedListener,
        OnCloseSelectedListener,
        OnActionBarItemSelectedListener,
        OnBookmarkSelectedListener
Run Code Online (Sandbox Code Playgroud)

在旧版本的Android上,我会为每个主屏幕/功能创建一个单独的Activity.这是代码气味还是几个片段和动画的组合会导致脂肪活动?

android android-fragments

6
推荐指数
1
解决办法
236
查看次数

为什么VS2015中的新项目针对.NET 4.5.2而不是4.6.1?

我刚刚在Visual Studio 2015中创建了一个新的控制台项目,并注意到该项目的目标是.NET Framework 4.5.2而不是更新的4.6.1,为什么会这样?

visual-studio-2015

5
推荐指数
1
解决办法
211
查看次数

Azure 函数与 ASP.NET Core Worker 服务?

Azure 函数与ASP.NET Core Worker Service有何不同?

这两者是否涵盖相同的用例?我如何决定使用哪一个?

azure azure-functions asp.net-core-hosted-services

5
推荐指数
1
解决办法
1205
查看次数

在using语句之外由内而外返回?

我应该在return内部还是外部进行using声明?

public IEnumerable<Foo> GetData()
{
    using (var db = new DbContext())
    {
        return db.Foo().ToList();
    }
}
Run Code Online (Sandbox Code Playgroud)

要么

public IEnumerable<Foo> GetData()
{
    IEnumerable<Foo> foo;

    using (var db = new DbContext())
    {
        foo = db.Foo().ToList();
    }

    return foo;
}
Run Code Online (Sandbox Code Playgroud)

c# return using-statement

4
推荐指数
2
解决办法
728
查看次数

XML 文档中标签的排序

Microsoft 有三斜杠 XML 文档及其推荐的标签集

如果标签的顺序在不同的使用位置不同,那就很奇怪了。

所以我想知道 XML 标签是否有任何推荐的排序?

例子:

/// <summary>Performs a foo calculation.</summary>
/// <param name="baseValue">The base value.</param>
/// <param name="af">The amplification factor.</param>
/// <returns>The supposed calculation.</returns>
/// <exception cref="ArgumentException"><paramref name="af"/> is negative.</exception>
/// <remarks>According to the theory laid forward by Dr. Hans Foo in 1732.</remarks>
/// <example>
/// Performs a foo calculation using a amplification factor of 10.
/// <code>var value = Foo(512, 10);</code>
/// </example>
public decimal Foo(int baseValue, decimal af) { /* ... */ …
Run Code Online (Sandbox Code Playgroud)

.net c#

4
推荐指数
1
解决办法
856
查看次数

我可以访问OWIN环境字典吗?

我可以在ASP.NET Core中访问OWIN环境字典吗?

我想从Startup.cs文件中访问它.

我想访问它的原因是因为我想将OWIN环境字典传递给我的中间件或从我的中间件中访问它.

owin asp.net-core

2
推荐指数
1
解决办法
2388
查看次数

何时使用和不使用反向导航属性?

何时使用导航属性是显而易见的。但是什么时候应该使用反向导航属性,什么时候不应该使用反向导航属性呢?

当我使用导航属性创建双向关系时,是否应该始终使用反向导航属性?

有什么指导原则吗?

entity-framework data-modeling

2
推荐指数
1
解决办法
367
查看次数

包中的IntelliSense和三次斜杠注释

我已经开发了一个代码库,我花了很多时间将其记录下来.

使用三斜杠XML(xmldoc)注释来注释类,方法和属性.

/// <summary>
/// Adds two numbers together.
/// </summary>
/// <param name="a">The first number.</param>
/// <param name="b">The second number.</param>
/// <returns>The sum.</returns>
public int Add(int a, int b)
{
    return a + b;
}
Run Code Online (Sandbox Code Playgroud)

但是当我将其编译成DLL文件并从我的其他项目引用它,或将其打包为我引用的NuGet包时,Visual Studio/IntelliSense不会为我的库提供任何文档.

为什么会这样,我该怎么办呢?

c# intellisense xml-documentation visual-studio nuget-package

1
推荐指数
1
解决办法
661
查看次数