Http Basic Authorization的使用

###1.Http Basic Authorization的请求格式 关于发起请求的http头格式,大家可以搜到很多相关资料。这里我们采用的方式比较特别,我们用mitmproxy这款http代理软件来拦截我们在终端的通过httpie发出的请求,分析其内容,从而得出Http Basic Authorization的请求格式。 首先我们发送一个http POST请求: http --auth neo1218@yeah.net POST http://121.43.230.104:5000/api/v1.0/token 拦截到的http header如下: 我们看到在http请求的header里有一个Authorization字段,内容有Basic标识符和一串编码组成。这串编程在经过解析之后,发现是username:password的base64编码。 这样就得到了我们Http Basic Authorization的请求格式,在http的请求头中加入字段格式是Authorization : Basic base64(username:password) ###2.Http Basic Authorization客户端使用,以ajax为例 下面以web端的ajax技术发起请求,来作为Http Basic Authorization客户端使用方法的实例。 var auth = btoa($(".username").val()+":"+$(".password").val()); this.options.userModel.fetch({ headers:{ "Authorization":"Basic "+ auth } }) 这是backbone中使用model的fetch api进行ajax请求的例子。在请求之前,我们配置headers字段,设置为base64编码后的auth信息。最后发送请求。 这个http请求头是这样的: ok,到这里我们就成功使用了http basic authorization来向服务器发送请求。 ###3.拓展阅读 《Http权威指南》中有关验证的章节

November 4, 2015