开发者社区> 问答> 正文

阿里云RPA有postman的服务端API签名调用的例子吗?

阿里云RPA有postman的服务端API签名调用的例子吗?计算Signature的pre-request scripts。

展开
收起
三分钟热度的鱼 2023-06-12 19:51:08 84 0
来自:阿里云RPA
2 条回答
写回答
取消 提交回答
  • 阿里云 RPA 提供了 RESTful API 接口,可以通过 Postman 这样的工具进行服务端 API 签名调用。

    以下是计算 Signature 的 pre-request scripts 代码示例:

    const crypto = require('crypto');
    
    const akId = pm.environment.get('accessKeyId');
    const akSecret = pm.environment.get('accessKeySecret');
    
    const method = request.method.toUpperCase();
    const canonicalURI = encodeURI(request.url.getPath());
    const canonicalQueryString = encodeURI(request.url.getQueryString());
    const host = request.headers.get('Host');
    const contentType = request.headers.get('Content-Type') || '';
    const md5 = crypto.createHash('md5').update(request.body || '').digest('base64');
    
    const content = method + '\n' +
            contentType + '\n' +
            md5 + '\n' +
            '\n' +
            canonicalURI + '\n' +
            canonicalQueryString + '\n' +
            'Host:' + host + '\n';
    
    const hmac = crypto.createHmac('sha256', akSecret);
    const signature = hmac.update(content).digest('base64');
    
    const authorization = 'ACS ' + akId + ':' + signature;
    
    pm.request.headers.add({
            key: 'Authorization',
            value: authorization
    });
    

    此脚本需要通过环境变量的方式设置 accessKeyId 和 accessKeySecret,然后在请求的 Headers 中添加 “Authorization” 头部,值为计算出的 Signature 认证内容即可。

    2023-06-13 11:18:52
    赞同 展开评论 打赏
  • 没有。此回答整理自钉群“阿里云RPA官方4群”

    2023-06-12 19:57:30
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
阿里云RPA历经8年的内部验证,覆盖了阿里巴巴大部分BU,实现了电商客服、新零售等新兴行业的渗透,并且已经完成在保险、金融、医疗保健等领域的场景深耕,联合合作伙伴具备深度定制化能力和稳定交付能力,积累了丰富的行业可行性解决方案。目前阿里云RPA能集成并运行在更高的软件层级,这就决定了它不会侵入、影响已有的软件系统。在帮助企业提升效能的过程中,保持企业已有的IT系统功能平稳、运行可靠。
问答排行榜
最热
最新

相关电子书

更多
毕马威-阿里云RPA联合方案力助保险业转型 立即下载
《阿里云RPA-引领电商智能提效时代》 立即下载
《阿里云RPA产品介绍4.0》 立即下载