小编Aru*_*tel的帖子

即使未提供密钥,jwt.io 也会显示签名已验证

我使用以下片段在 N​​ode.js 中签署了 jwt。

var jwtoken = jwt.sign({ email: 'test@test.com', name: 'test' }, 'abcd');
Run Code Online (Sandbox Code Playgroud)

签名后我得到了以下令牌

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InRlc3RAdGVzdC5jb20iLCJuYW1lIjoidGVzdCIsImlhdCI6MTYzNjE4MjYwOX0.07FXjm1lKEIiU_QOMEEOFzhsC0vtKt4PFoW-7YHHzyM
Run Code Online (Sandbox Code Playgroud)

当我将 JWT 粘贴到 jwt.io 中时,我想用jwt.io验证这一点,我可以看到该网站对我提供的任何密钥显示“签名已验证”(我不需要提供 abcd 这是我的实际密钥)。我预计需要密钥来确定签名是否有效。jwt.io 如何在没有原始密钥的情况下确定 jwt 是否有效。

sign node.js jwt jwt.io

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

Kotlin 中的私有构造函数有什么用?

我是 Kotlin 的新手。我想问一下Kotlin中的私有构造函数有什么用?class DontCreateMe private constructor () { /*...*/ }。我的意思是,如果我们无法创建它的实例,那么该类应该是什么?

constructor kotlin

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

使用模型推断批次与使用 pytorch 的个人时的不同结果

我有一个神经网络,它采用维度 (batch_size, 100, 1, 1) 的输入张量并生成维度 (batch_size, 3, 64, 64) 的输出张量。使用模型推断一批两个元素和单独推断元素时,我得到了不同的结果。

使用下面的代码,我初始化了一个维度为 (2, 100, 1, 1) 的 pytorch 张量。我将这个张量传递给模型,然后将模型输出的第一个元素存储在变量 result1 中。对于 result2,我只是通过我的模型直接运行原始输入张量的第一个元素。

inputbatch=torch.randn(2, Z_DIM, 1, 1, device=device)
inputElement=inputbatch[0].unsqueeze(0)

result1=model(inputbatch)[0]
result2=model(inputElement)
Run Code Online (Sandbox Code Playgroud)

我的期望是 result1 和 result2 是一样的。但是 result1 和 result2 是完全不同的。谁能解释为什么这两个输出不同。

python training-data deep-learning pytorch

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

有人能解释一下sql查询是如何工作的吗?

下面的 SQL 查询获取所有具有不同姓氏的名字。

select a.first_name
from names a
WHERE a.first_name in (
select b.first_name 
  from names b
  WHERE a.last_name<>b.last_name
)
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚这到底是如何工作的。我认为会发生的是,对于表中的每一行,子查询将检查是否存在具有不同姓氏的行。但检查仅发生在名字的相同值之间。有人可以解释一下这实际上是如何运作的吗?

sql database sql-server

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

字符串大写会在 char 数组的末尾添加垃圾

我正在学习 C++,我编写了一些代码将字符串转换为大写并显示它。我用“asdf”分配一个字符串 str,然后创建一个 char 数组指针并分配与该字符串相同的长度。

\n

但是,当我尝试显示 char 数组时,用大写字符分配 char 数组的索引后,末尾会附加许多垃圾字符。为什么会发生这种情况,因为我只分配了大小=“字符串长度”的字符数组,那么即使在实际分配的大小之后,字符数组如何在末尾有垃圾字符。

\n
string str{ "asdf" };\nchar* str_c = new char[str.length()];   \nfor (int i = 0; i < str.length(); i++) {\n    str_c[i] = toupper(str[i]);     \n}\ncout << str_c; // displays ASDF\xc2\xb2\xe2\x96\x8cr\xe2\x94\x90\xe2\x94\x82w\xc2\xb2A\xe2\x88\x99\n
Run Code Online (Sandbox Code Playgroud)\n

c++ string

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