mirror of
https://github.com/SocialSisterYi/bilibili-API-collect.git
synced 2025-02-11 03:40:11 +08:00
修改wbi文档中的流程描述 (#718)
This commit is contained in:
parent
6c355c0c33
commit
0abdd4b847
@ -43,7 +43,7 @@
|
|||||||
72136226c6a73669787ee4fd02a74c27
|
72136226c6a73669787ee4fd02a74c27
|
||||||
```
|
```
|
||||||
|
|
||||||
3. 将欲签名的请求参数排序后编码
|
3. 为参数中添加`wts`时间戳
|
||||||
|
|
||||||
若下方内容为欲签名的请求参数(以 js obj 为例)
|
若下方内容为欲签名的请求参数(以 js obj 为例)
|
||||||
|
|
||||||
@ -51,14 +51,29 @@
|
|||||||
{
|
{
|
||||||
foo: '114',
|
foo: '114',
|
||||||
bar: '514',
|
bar: '514',
|
||||||
baz: 1919810
|
zab: 1919810
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
那么按照 Key 排序并进行 url query 编码后的结果应为:
|
`wts`字段的值应为以秒为单位的 Unix TimeStamp,如`1684746387`
|
||||||
|
|
||||||
|
将`wts`参数添加在参数列表中,即:
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
{
|
||||||
|
foo: '114',
|
||||||
|
bar: '514',
|
||||||
|
zab: 1919810,
|
||||||
|
wts: 1684746387
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
4. 将欲签名的请求参数排序后编码
|
||||||
|
|
||||||
|
按照 Key 升序排序并进行 url query 编码后的结果应为:
|
||||||
|
|
||||||
```
|
```
|
||||||
bar=514&baz=1919810&foo=114
|
bar=514&foo=114&wts=1684746387&zab=1919810
|
||||||
```
|
```
|
||||||
|
|
||||||
请注意,如果参数值为中文或特殊字符,则进行 url query 编码后的字符串中参数值对应的字母必须是**大写字母** (部分库会编码为小写字母)
|
请注意,如果参数值为中文或特殊字符,则进行 url query 编码后的字符串中参数值对应的字母必须是**大写字母** (部分库会编码为小写字母)
|
||||||
@ -78,34 +93,24 @@
|
|||||||
bar=%E4%BA%94%E4%B8%80%E5%9B%9B&baz=1919810&foo=one%20one%20four
|
bar=%E4%BA%94%E4%B8%80%E5%9B%9B&baz=1919810&foo=one%20one%20four
|
||||||
```
|
```
|
||||||
|
|
||||||
4. 为参数中添加`wts`时间戳
|
|
||||||
|
|
||||||
`wts`字段的值应为以秒为单位的 Unix TimeStamp,如`1684746387`
|
|
||||||
|
|
||||||
将`wts`参数添加在参数列表最后,即:
|
|
||||||
|
|
||||||
```
|
|
||||||
bar=514&baz=1919810&foo=114&wts=1684746387
|
|
||||||
```
|
|
||||||
|
|
||||||
5. 计算`w_rid`并添加在其后
|
5. 计算`w_rid`并添加在其后
|
||||||
|
|
||||||
在上一步得出的 url query 字符串后拼接第 2 步计算得出的`mixin_key`(作为盐)
|
在上一步得出的 url query 字符串后拼接第 2 步计算得出的`mixin_key`(作为盐)
|
||||||
|
|
||||||
```
|
```
|
||||||
bar=514&baz=1919810&foo=114&wts=168474638772136226c6a73669787ee4fd02a74c27
|
bar=514&foo=114&wts=1684746387&zab=191981072136226c6a73669787ee4fd02a74c27
|
||||||
```
|
```
|
||||||
|
|
||||||
对这个整体进行 **md5 Hash 运算**(32-bit 字符小写),得到的值便是 Wbi Sign,也就是参数`w_rid`
|
对这个整体进行 **md5 Hash 运算**(32-bit 字符小写),得到的值便是 Wbi Sign,也就是参数`w_rid`
|
||||||
|
|
||||||
```
|
```
|
||||||
d3cbd2a2316089117134038bf4caf442
|
90efcab09403023875b8516f07e9f9de
|
||||||
```
|
```
|
||||||
|
|
||||||
最后一步,把这个计算出的值作为参数`w_rid`添加在原始参数列表后,也就完成了一次 Wbi Sign,可以调用 REST API 进行请求了
|
最后一步,把这个计算出的值作为参数`w_rid`添加在原始参数列表后,也就完成了一次 Wbi Sign,可以调用 REST API 进行请求了
|
||||||
|
|
||||||
```
|
```
|
||||||
bar=514&baz=1919810&foo=114&wts=1684746387&w_rid=d3cbd2a2316089117134038bf4caf442
|
bar=514&foo=114&wts=1684746387&zab=1919810&w_rid=90efcab09403023875b8516f07e9f9de
|
||||||
```
|
```
|
||||||
|
|
||||||
## Wbi签名算法实现Demo
|
## Wbi签名算法实现Demo
|
||||||
|
Loading…
Reference in New Issue
Block a user