1.HTTP BASIC认证
在HTTP中,基本认证是一种用来允许Web浏览器或其他客户端程序在请求时提供以用户名和口令形式的凭证。在发送之前,用户名追加一个冒号然后串接上口令。得出的结果字符串再用Base64算法编码。例如,用户名是Aladdin,口令是open sesame,拼接后的结果是Aladdin:open sesame,然后再用Base64编码,得到QWxhZGRpbjpvcGVuIHNlc2FtZQ==。Base64编码的字符串发送出去,并由接收者解码,得到一个由冒号分隔的用户名和口令的字符串。
在你访问一个需要HTTP Basic Authentication的URL的时候,如果你没有提供用户名和密码,服务器就会返回401,如果你直接在浏览器中打开,浏览器会提示你输入用户名 和密码。你可以尝试点击这个url看看效果:http://api.minicloud.com.cn/statuses/friends_timeline.xml。用户输入用户名称和密码,浏览器发送带认证的请求包。 HTTP服务器在每次收到请求包后,根据协议取得客户端附加的用户信息(BASE64加密的用户名和密码),解开请求包,对用户名及密码进行验证,如果用户名及密码正确,则根据客户端请求,返回客户端所需要的数据;否则,返回错误代码或重新要求客户端提供用户名及密码。