小编jps*_*jps的帖子

如何在 deno 中使用 HmacSHA256 创建(并验证)哈希?

我知道如何在 Python 中做到这一点。

#!/usr/bin/python
import sys
import os
import hashlib
import hmac
import base64

secretKey = bytes("passw@rd", 'UTF-8')
message = bytes(f'hello world\nhello deno', 'UTF-8')
encryptedKey = base64.b64encode(hmac.new(secretKey, message, digestmod=hashlib.sha256).digest())
print(encryptedKey)
Run Code Online (Sandbox Code Playgroud)

代码输出

但我不知道如何在 den 中做到这一点。我希望在 deno 中得到与上面的 python 代码相同的结果。

hash typescript deno

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

如何使用依赖注入使 Log4Net 与 ASP.NET Core 3.1 一起工作?

我正在尝试在 ASP.NET Core 3.1 应用程序中使用 log4Net,并尝试使用控制器使其与依赖注入一起使用。我成功地能够使用 Log4Net 使用LogManager.GetLogger(type). 任何帮助,将不胜感激。

这是我现在用于日志记录的代码示例:

public class HomeController : Controller
{
    private static readonly log4net.ILog _log = LogManager.GetLogger(typeof(Logger));

    public HomeController()
    {
        _log.Debug("Test");
    }
}
Run Code Online (Sandbox Code Playgroud)

log4net dependencies code-injection asp.net-core

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

在 Python 中获取核心计数(不是线程计数)

我试图找到一种方法来获取某人使用 Python 的 CPU 核心数。我找到的几乎所有答案都是:

multiprocessing.cpu_count()

或者

os.cpu_count()

虽然这些选项非常适合查看计算机有多少个线程,但它并不能告诉我它有多少个内核。

python operating-system multiprocessing cpu-cores

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

Envoy 的 Jwt 验证失败

我有一个 Laravel(Lumen) 登录 API,它使用 HS256 生成 JWT。然后我将不记名令牌发送到 Envoy Gateway 并从 Envoy 获取

JWT验证失败

在官方 JWT 解码网站上,我可以成功解码并验证我的不记名令牌。在这里我生成我的 JWT:

{
    $payload = [
        'iss' => config('app.name'),                  // Issuer vom Token
        'sub' => strval($user->ID),                       // Subject vom Token
        'username' => $user->username,
        'iat' => time() - 500,                            // Time when JWT was issued.
        'exp' => time() + config('jwt.ttl'),         // Expiration time
        'alg' => 'HS256',
        'kid' => 'ek4Z9ouLmGnCoezntDXMxUwmjzNTBqptKNkfaqc6Ew8'
    ];
    $secretKey = 'helloworld'; //my base64url

    $jwtEnc = JWT::encode($payload, $secretKey, $payload['alg'], $payload['kid']);

    return $jwtEnc;
}
Run Code Online (Sandbox Code Playgroud)

这是我的 Envoy …

jwt lumen laravel-envoy jwk envoyproxy

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

降低认知复杂性

我在降低给定代码片段的认知复杂性方面遇到了很大的麻烦。您能否提供一些有关如何解决此问题的提示?我可以使用switch将其从 24 减少到 16 ,但它仍然是 16,我没有其他选择

 protected override bool Compare(object valueToValidate, object valueToCompare)
    {
        if (RaUtils.IsBlankValue(valueToValidate) || RaUtils.IsBlankValue(valueToCompare))
        {
            return true;
        }

        switch (Type.GetTypeCode(valueToCompare.GetType()))
        {
            case TypeCode.DateTime:
                if (DateTime.TryParse(valueToValidate.ToString(), out var valueToValidateDt)
                    && DateTime.TryParse(valueToCompare.ToString(), out var valueToCompareDt))
                {
                    return valueToValidateDt >= valueToCompareDt;
                }

                break;
            case TypeCode.Double:
                if (double.TryParse(valueToValidate.ToString(), out var valueToValidateDouble)
                    && double.TryParse(valueToCompare.ToString(), out var valueToCompareDouble))
                {
                    return valueToValidateDouble >= valueToCompareDouble;
                }

                break;
            case TypeCode.Decimal:
                if (decimal.TryParse(valueToValidate.ToString(), out var valueToValidateDecimal)
                    && decimal.TryParse(valueToCompare.ToString(), out var valueToCompareDecimal))
                {
                    return valueToValidateDecimal …
Run Code Online (Sandbox Code Playgroud)

c# sonarqube .net-core

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

是否有一种更清晰的方法来单独总结类中的所有数值属性?

我有一个类,如下所示示例类。在我的 DoSomeLogic 方法中,我需要对示例类的集合求和,并希望返回示例类的新实例,其中每个数字属性都包含该集合中该属性的总和。

下面是我通常如何执行此操作的示例,但我的问题是我不断更新示例类,添加新属性等。执行此操作时,我需要记住也更新示例类的 sum 方法,或者我的代码已损坏,这似乎是我想避免的障碍/漏洞。

任何人都可以向我展示一种更好的方法来执行此操作,这样如果我向示例类添加新的数字属性,我就不需要更新 sum 方法?

public class Example 
{
    public Example()
    {
    }

    public Example(int a, int b, float c)
    {
        A = a;
        B = b;
        C = c;
        IgnoreThis = "Non numerical properties should be ignored by the sum method";
    }

    public int A { get; set; }
    public int B { get; set; }
    public float C { get; set; }
    public string IgnoreThis {get; set;}
}
Run Code Online (Sandbox Code Playgroud)
using System.Collections.Generic;
using System.Linq;

public static …
Run Code Online (Sandbox Code Playgroud)

c# linq

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

无线 M-bus / OMS 数据包解码

3E4424237952324825077A09503005702970D754206CF3FFA5A2EE90103E42049140ACA625243A7DC4550DB811208D8299D7A34EB9ECBEE9CD751A685F0FF05D1A3D004F320600211B
Run Code Online (Sandbox Code Playgroud)

这是我从 wm-bus (OMS) 水表收到的数据包,它带有 CRC 字节。

正如我从 OMS 文档中得到的,这是 CBC 初始向量:

24237952324825070909090909090909
Run Code Online (Sandbox Code Playgroud)

AES密码是:11111111111111111

当我得到它时,需要解码的第一个 AES 块是:

702970d754206cf3ffa5a2ee90103e42 
Run Code Online (Sandbox Code Playgroud)

解码后前两个字节应该是 2f 2f 但它们不是。

aes

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

使c++程序在windows中的特定核心上运行

我想知道如何强制 Visual Studio 中的 C++ 程序在特定的核心上运行(在具有多个核心的计算机上)。

我找到了这篇文章,但它指的是 Linux 中的 C(我在 Windows 上使用 Visual Studio)

另外,我使用的 Windows 版本有关系吗?

c++ windows cpu-cores

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

在 codeigniter 中找不到我的核心类 My_head

我正在尝试在 codeigniter 中创建核心类。在 application/core 中,我创建一个名为 MY_head.php 的文件,MY_head.php 的代码是:

class MY_head extends CI_Controller{
 
  public function __construct(){
     parent::__construct();
  }
 
  public function load_header(){
      //some code here
  }
}
Run Code Online (Sandbox Code Playgroud)

现在我尝试在我的控制器practice.php中扩展此类,代码是:

class Practice extends MY_head{
   public function __construct(){
     parent::__construct();
   }

   function index(){
   }
}
Run Code Online (Sandbox Code Playgroud)

但是当我在浏览器中加载练习控制器时,它说

致命错误:找不到类“MY_head”。

哪里有问题?

注意:$config['subclass_prefix'] = 'MY_';

php codeigniter class

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

如何在Unity中的2D画布上播放3D动画

我喜欢在Canvas上播放动画.

我制作了一个画布,如下图所示. 在此输入图像描述

我喜欢在绿色帆布上玩高尔夫球手动画.可能吗?

我有动画模型,如第二张图所示.

我喜欢在画布上播放高尔夫球手动画.我怎样才能做到这一点?我拖动并放在画布下作为子对象,它不起作用.

在此输入图像描述

unity-game-engine unity3d-2dtools

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