像微信、微博、淘宝、豆瓣等提供API给开发者,往往需要申请token,请求数据要根据规则生成签名等,对于这个过程,我大概讲讲,看我的理解对不对。
比如微信,开发者有Appid,appsecrt两个东西,需要请求一个url传递这两个参数获取token,我理解成appid和appsecrt相当于用户名密码一样(我这是比喻),微信服务器验证你是“注册”的开发者账户,账户没有问题,那么就给你生成一个token,这个token就是给你一把钥匙。
你拿着这把钥匙,后面的请求带上这把钥匙,就不用再验证你的身份了,就可以请求API接口传送或接受数据。
那么构造签名,比如参数升序加盐加密的过程,它的意义是什么?我理解成这是第二重保护,有token如果token被劫持了或泄露了别人也可以拿来做点什么,但是构造签名每次都需要验证,所以签名是每次都不同的,这样可以更加保护数据不被泄露。
我的理解对吗,如果不对,哪里有问题,请帮我指出,谢谢!!(最近做服务器端的类似于这种东西,别人请求我们API,我们返回数据,也做这样的验证,参照网上的资料做完了,有些细节还是没想明白。)
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.