Foxtable(狐表)用户栏目专家坐堂 → [求助]如何完成digest认证?


  共有1783人关注过本帖树形打印复制链接

主题:[求助]如何完成digest认证?

帅哥哟,离线,有人找我吗?
foxtable1
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:324 积分:2728 威望:0 精华:0 注册:2012/10/17 10:05:00
[求助]如何完成digest认证?  发帖心情 Post By:2024/4/23 16:38:00 [只看该作者]

[求助]如何完成digest认证?

 回到顶部
帅哥哟,离线,有人找我吗?
foxtable1
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:324 积分:2728 威望:0 精华:0 注册:2012/10/17 10:05:00
  发帖心情 Post By:2024/4/23 16:43:00 [只看该作者]

httpclient.headers如何设置?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111390 积分:567014 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/4/23 17:06:00 [只看该作者]

估计用不了,网上搜了一下,需要使用HttpClientHandler 类,但是这玩意是.net framework 4.5才有的,foxtable仅支持到4.0

 回到顶部
帅哥哟,离线,有人找我吗?
foxtable1
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:324 积分:2728 威望:0 精华:0 注册:2012/10/17 10:05:00
  发帖心情 Post By:2024/4/24 8:48:00 [只看该作者]

怎会用不了呢?微信api接口调用,其签名认证好像也属于digest认证吧。

 回到顶部
帅哥哟,离线,有人找我吗?
foxtable1
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:324 积分:2728 威望:0 精华:0 注册:2012/10/17 10:05:00
  发帖心情 Post By:2024/4/24 8:57:00 [只看该作者]

<!--[if !supportLists]-->                        i.              <!--[endif]-->认证方式为Digest认证时,用户访问该API时需要在HTTP请求头中携带"Authorization", "Authorization"的值对应格式为

<!--[if !supportLists]-->                      <!--[endif]-->Algorithm=Algorithm,TimeStamp=TimeStamp,AccessKeyId=AccessKeyId,Signature=Signature

名称

描述

Algorithm

用于计算签名的算法HMAC-SHA256

TimeStamp

时间戳,为API调用时刻对应的UTC时间(北京时间-8小时),时间格式如下"2015-01-01 01:01:01"

Access Key Id

授权后为用户分配的Access Key ID

Signature

参加签名的字段有:URL参数,TimeStamp, Access Key Secret

1.URL参数规范化

1).&符号为分隔符,得到参数列表

2).把分隔后得到的字符串按参数名称的字典顺序依次使用&符号连接。

3).使用UTF-8字符集进行URL编码。

2.构造用于计算签名的字符串

StringToSign=

HTTPMethod + "&" +

percentEncode("/") + "&" +

percentEncode("TimeStamp") + "&" +

URL参数规范化的值

其中percentEncode指使用UTF-8字符集进行编码。

3.计算签名




 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111390 积分:567014 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/4/24 8:58:00 [只看该作者]

微信直接传入appid,secret就可以获取access_token,不需要那么复杂

 回到顶部
帅哥哟,离线,有人找我吗?
foxtable1
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:324 积分:2728 威望:0 精华:0 注册:2012/10/17 10:05:00
  发帖心情 Post By:2024/4/24 8:59:00 [只看该作者]

给个如下案例,代码如何写?

名称

URL

http://www.**po.com/api/v1.0/catlog?id=1&flag=true&type=json

HTTPMethod

GET

TimeStamp

2016-01-01 01:01:01

Algorithm

HMAC-SHA256

Access Key Id

bf796c1d7081462a49042c0a71ed9b143

Access Key Secret

8bf76c1d7081462a9042c0a71ed9b142


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111390 积分:567014 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/4/24 9:03:00 [只看该作者]


 回到顶部