调用物联网平台云端api时的签名python3实现

简介: 调用物联网平台云端api时的签名python3实现。

物联网平台中调用云端api,python的签名实现如下,目前物联网平台支持的api列表

import time
import sys
import hashlib
import hmac
import base64
import urllib.parse
def do_sign(secret, sign_content):
    m = hmac.new(secret, sign_content, digestmod=hashlib.sha1)
    return base64.b64encode(m.digest()).decode("utf-8")
def encode(str): 
    result = urllib.parse.quote(str);
    print ("encode===="+result)
    return result
accessKeyId = "";
accessSecret = "";
httpmethod = "POST"
parm = {
    "Format":"JSON",
    "Version":"2018-01-20",
    "AccessKeyId":accessKeyId,
    "SignatureMethod":"HMAC-SHA1",
    "Timestamp":"2021-12-28T06:37:48Z",
    "SignatureVersion":"1.0",
    "SignatureNonce":"86439216304009",
    "Action":"QueryDevice",
    "ProductKey":"a1tDKl1PBkl",
    "RegionId":"cn-shanghai"
    }
str_parm = ''
for p in sorted(parm):
    if(len(str_parm)>0):
        str_parm = str_parm + '&'
    if isinstance(parm[p],str):        
        str_parm = str_parm + str(p) +"="+str(encode(parm[p]))
        continue
    str_parm = str_parm + str(p) +"="+encode(str(parm[p]))
str_parm = httpmethod + '&' + "%2F" + '&' + encode(str_parm);
print (str_parm)
key = accessSecret+'&';
signature = do_sign(key.encode("utf-8"), str_parm.encode("utf-8"))
print ("signature==="+signature) 
print ("最终signature===" + encode(signature)) 
相关实践学习
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
10月前
|
API 网络安全 网络架构
【Azure APIM】解答REST API实现"禁用自签名证书的证书链验证"中的backends参数值从那里取值的问题?
本文介绍APIM服务调用后端API时因自签名证书导致500错误的解决方案。通过REST API禁用证书链验证,关键在于获取正确的backendId(即APIM中配置的Backend名称),并调用PATCH接口设置validateCertificateChain为false,从而解决SSL/TLS信任问题。
304 7
|
11月前
|
数据采集 缓存 API
1688 API 实战指南:搞定批发场景的 3 大核心难题(附签名代码与避坑清单)
本文深入解析了1688 API 在批发场景下的三大核心难题及解决方案,涵盖签名机制、商品数据处理与订单同步等高频问题,提供可复用代码与避坑清单,助你高效对接1688平台。
|
11月前
|
存储 监控 前端开发
淘宝商品详情 API 实战:5 大策略提升店铺转化率(附签名优化代码 + 避坑指南)
本文深入解析淘宝商品详情API的核心字段与实战应用,分享如何通过动态定价、库存预警、差评控制等5大策略提升电商转化率。结合300+店铺实战经验,提供优化代码与避坑指南,助力开发者与运营者实现数据驱动的精细化运营。
|
JSON API 数据处理
Winform管理系统新飞跃:无缝集成SqlSugar与Web API,实现数据云端同步的革新之路!
【8月更文挑战第3天】在企业应用开发中,常需将Winform桌面应用扩展至支持Web API调用,实现数据云端同步。本文通过实例展示如何在已有SqlSugar为基础的Winform系统中集成HTTP客户端调用Web API。采用.NET的`HttpClient`处理请求,支持异步操作。示例包括创建HTTP辅助类封装请求逻辑及在Winform界面调用API更新UI。此外,还讨论了跨域与安全性的处理策略。这种方法提高了系统的灵活性与扩展性,便于未来的技术演进。
911 2
|
缓存 算法 API
从 0 实现 API 接口签名验证系统:基于 HMAC-SHA256 的防篡改方案(附 Python 全代码)
本文介绍基于 的 API 接口签名验证系统,实现防篡改与防重放攻击,包含完整设计原理、签名生成规则及可运行的 Python 客户端与服务端代码,并提供安全性优化与部署建议。
|
存储 安全 NoSQL
【干货满满】API安全加固指南:签名防篡改+Access Token管理最佳实践
API 安全关乎业务与用户隐私,签名机制防篡改、伪造请求,Access Token 管理身份与权限。本文详解签名生成、Token 类型与管理、常见安全问题及最佳实践,助开发者构建安全可靠的 API 体系。
|
机器学习/深度学习 物联网 数据处理
C语言用于物联网更合适还是python
选择 C 语言还是 Python 作为物联网(IoT)开发的语言取决于多个因素,包括项目的性质、资源限制、性能需求以及开发团队的技能水平。C 语言性能优越,适合资源受限的嵌入式设备,能直接访问硬件,广泛应用于底层开发,但开发复杂且容易出错。Python 则以其简单的语法和丰富的库支持快速开发和原型制作,适合跨平台应用和数据处理,但性能较低,资源占用较大。根据项目需求,性能和资源要求高时选择 C 语言,需快速开发和易于维护时选择 Python。
|
关系型数据库 数据库 数据安全/隐私保护
"告别繁琐!Python大神揭秘:如何一键定制阿里云RDS备份策略,让数据安全与效率并肩飞,轻松玩转云端数据库!"
【8月更文挑战第14天】在云计算时代,数据库安全至关重要。阿里云RDS提供自动备份,但标准策略难以适应所有场景。传统手动备份灵活性差、管理成本高且恢复效率低。本文对比手动备份,介绍使用Python自定义阿里云RDS备份策略的方法,实现动态调整备份频率、集中管理和智能决策,提升备份效率与数据安全性。示例代码演示如何创建自动备份任务。通过自动化与智能化备份管理,支持企业数字化转型。
394 2
|
传感器 存储 监控
使用Python进行物联网设备控制与数据收集
通过这些步骤和示例,可以看到Python在物联网领域的广泛应用和强大功能。Python不仅能够轻松实现硬件控制和数据处理,还能通过丰富的库和工具支持高效的开发、部署和运维。随着物联网技术的不断发展,Python将继续在智能家居、工业自动化、智慧城市等领域发挥重要作用,为开发者提供更多的创新和高效的解决方案。
|
人工智能 安全 物联网
Python 物联网入门指南(八)(3)
Python 物联网入门指南(八)
191 1

热门文章

最新文章

相关产品

  • 物联网平台
  • 推荐镜像

    更多