小编San*_*tak的帖子

ASP.NET核心JWT承载令牌自定义验证

经过大量阅读,我找到了一种实现自定义JWT承载令牌验证器的方法,如下所示.

Starup.cs 代码:

public void Configure(IApplicationBuilder app, IHostingEnvironment env, 
         ILoggerFactory loggerFactory, IApplicationLifetime appLifetime)
{
    loggerFactory.AddConsole(Configuration.GetSection("Logging"));
    loggerFactory.AddDebug();

    app.UseStaticFiles();

    app.UseIdentity();

    ConfigureAuth(app);

    app.UseMvcWithDefaultRoute();            
}

private void ConfigureAuth(IApplicationBuilder app)
    {

        var signingKey = new SymmetricSecurityKey(Encoding.ASCII.GetBytes(Configuration.GetSection("TokenAuthentication:SecretKey").Value));


        var tokenValidationParameters = new TokenValidationParameters
        {
            // The signing key must match!
            ValidateIssuerSigningKey = true,
            IssuerSigningKey = signingKey,
            // Validate the JWT Issuer (iss) claim
            ValidateIssuer = true,
            ValidIssuer = Configuration.GetSection("TokenAuthentication:Issuer").Value,
            // Validate the JWT Audience (aud) claim
            ValidateAudience = true,
            ValidAudience = Configuration.GetSection("TokenAuthentication:Audience").Value,
            // Validate the token expiry …
Run Code Online (Sandbox Code Playgroud)

c# asp.net jwt asp.net-core asp.net-core-middleware

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

禁用输入以便从POST中排除它们?

我有一个表单发布到服务器的值,但我希望能够控制哪些输入作为请求参数包含在帖子中.

因此,如果我有一个基本的文本输入,我怎么能阻止它被包含在提交中?

html javascript forms jquery post

8
推荐指数
2
解决办法
4129
查看次数

在对ASP.NET MVC Action的AJAX请求期间有网络请求超时时会发生什么

如标题中所述,我想知道将AJAX请求发送到控制器操作时会发生什么,并且在此期间,在请求完成之前几毫秒发生网络超时.

Reply from <Server IP>: bytes=32 time=31ms TTL=122
Request timed out
Reply from <Server IP>: bytes=32 time=28ms TTL=122
Run Code Online (Sandbox Code Playgroud)

考虑到超时仅发生几毫秒,这会对我的AJAX请求产生什么影响?

这是我们在我们的应用程序中遇到的问题的延续,正如在这个SO问题中所解释的那样,我想知道它们是否以某种方式相关.

我搜索过类似的问题,但找不到任何有用的东西.

编辑:除了对AJAX的影响外,它会影响动作方法的行为(服务器)吗?

asp.net ajax asp.net-mvc networking asp.net-mvc-2

6
推荐指数
2
解决办法
1087
查看次数

赋值中出现意外的后增量行为

你能不能帮我理解为什么变量a在第一种情况下没有增加但是在第二种情况下呢?

情况1:

int a = 10;            
a = a++;
Console.WriteLine(a); //prints 10
Run Code Online (Sandbox Code Playgroud)

案例2:

int a = 10;                        
int c = a++;
Console.WriteLine(a); //prints 11
Run Code Online (Sandbox Code Playgroud)

我已经完成了其他类似的问题,但找不到任何具体细节.

更新1:我认为程序如何流动

情况1:

1. 'a' is assigned 10
2. 'a' is assigned 10 before increment happens
3. 'a' is incremented by 1 (Why doesn't this step affect the final value of 'a'?)
4. 'a' is printed --> 10
Run Code Online (Sandbox Code Playgroud)

案例2:

1. 'a' is assigned 10
2. 'c' is assigned 10 before 'a' is incremented …
Run Code Online (Sandbox Code Playgroud)

c# expression

5
推荐指数
2
解决办法
174
查看次数

我想在离开页面之前显示模态弹出窗口

<a href="https://www.w3schools.com/bootstrap/tryit.asp?filename=trybs_modal&stacked=h" id="leave">click here to leave the page</a>


<div id="myModal" class="modal fade" role="dialog">
  <div class="modal-dialog">

    <!-- Modal content-->
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal">&times;</button>
        <h4 class="modal-title">Modal Header</h4>
      </div>
      <div class="modal-body">
        <p>Changes made may not be saved.</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
      </div>
    </div>

  </div>
</div>

$("#leave").click(function() {
  $(window).bind('beforeunload', function() {
    return 'Changes you made may not be Saved';
  });
});
Run Code Online (Sandbox Code Playgroud)

这是我工作的小提琴

html javascript css model-view-controller jquery

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

JavaScript RegEx仅允许AlphaNumeric字符和一些特殊字符

在textarea字段中,我想只允许使用字母数字字符, - (连字符),/(正斜杠),.(点)和空格.我已经经历了类似的问题,但不管怎样,我的确切要求似乎有所不同.所以,下面是我在读完成员给出的答案后想出的正则表达式:

/^[a-z0-9\-\/. ]+$/i

我已经测试了正则表达式,到目前为止它似乎工作,但我想仔细检查.请验证上述正则表达式是否符合我的要求.

javascript regex

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

依赖反转原理:高级和低级模块示例

我正在通过以下链接来了解依赖反转原则中高级和低级模块的含义。

根据此处给出的说明,以下代码段是否是一个好/适当的示例?

public class HighLevel
{
    private IAbstraction _abstraction;

    public HighLevel(IAbstraction abstraction)
    {
        _abstraction = abstraction;
    }

    public void Act()
    {
        _abstraction.DoSomething();
    }

}

public interface IAbstraction
{
    void DoSomething();
}

public class LowLevel: IAbstraction
{
    public void DoSomething()
    {
        //Do something
    }
}
Run Code Online (Sandbox Code Playgroud)

c# design-principles dependency-inversion

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

Google Chrome的Javascript重定向问题

我的问题有点类似于这个问题.但是,由于我的实现有点不同,我创建了一个新问题.

我有一个页面,其中禁用后退按钮(经过大量谷歌搜索后得到脚本).这个页面的作用是它重定向到不同的位置(ASP.NET MVC控制器动作).由于操作需要一段时间才能完成,因此会显示等待消息.下面是我用来禁用后退按钮和重定向页面的脚本.

<script type="text/javascript">
    function changeHashOnLoad() {
        window.location.href += "#";
        setTimeout(changeHashAgain, 50);
    }

    function changeHashAgain() {
        window.location.href += "1";
    }

    var storedHash = window.location.hash;
    window.setInterval(function () {
        if (window.location.hash != storedHash) {
            window.location.hash = storedHash;
        }
    }, 50);

    //do after all images have finished loading
    $(window).load(function () {    
        changeHashOnLoad();        
        //show the wait message
        $("#domWaitMessage").show();
        //redirect to the new page/controller action
        window.location.href = document.forms[0].action;
    });
</script>
Run Code Online (Sandbox Code Playgroud)

我的上述代码适用于IE和Firefox,但不适用于Chrome.屏幕在Opera中闪烁很多,但重定向仍然有效.在Chrome中,我的控制器中的操作会被调用并且处理已完成,但在处理完成后页面未被重定向.大多数人可能觉得有必要改变流程/实施,但我对此事没有发言权,所以必须坚持这一流程.

Platform: ASP.NET MVC 2.0
jQuery Version: 1.4.1
Chrome Version: 16.0.912.63m

更新: …

javascript asp.net-mvc jquery

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

jquery如果td没有文本,则隐藏表行

我试图隐藏表行,如果行td内没有文本.怎么做.到目前为止,我试过这里的小提琴

使用Javascript:

$('#tblNodes > tbody  > tr').each(function () {
    if ($td.text() == '') {
        $(this).hide();
    }
});
Run Code Online (Sandbox Code Playgroud)

HTML:

<table id="tblNodes" border=1 width=100%>
    <tr>
        <td class="nodeData"></td>
    </tr>
    <tr>
        <td class="nodeData">abc</td>
    </tr>
    <tr>
        <td class="nodeData"></td>
        <tr>
            <td class="nodeData"></td>
        </tr>
        <tr>
            <td class="nodeData">abc</td>
        </tr>
        <tr>
            <td class="nodeData"></td>
        </tr>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

html css jquery hide

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