http中的一个请求头让我反思...

本文分享了一次在处理开源服务器接口请求时遇到的HTTP基本认证问题。作者在尝试调用一个无参数接口时,发现必须携带正确的Authorization头才能获取数据。经过研究,了解到Authorization头中的Basic字段是由用户名和密码经Base64编码生成。这一细节问题耗费了大量时间,提醒开发者们在处理HTTP请求时需注意此类认证机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:好久没更新博客了,一方面是工作真的很忙,二来感觉这段时间中没接触到比较有价值的技术点没写。

正文:最近在做一个项目,是基于开源框架搭建的服务器,比如redmine,zabbix,grafana等,写安卓客户端。将这些服务器采集到的数据再app中展示。一个看是很常规比较容易的项目,但是这服务器是开源的,不是自己公司后的人写的,且这些开源服务器是针对web前端页面设计的,在请求和返回值上,移动端要针对性的去处理,所以自己去开源官方的文档找资料摸索。在请求一个接口的时候,没有入参,但是demo中调用那个接口后就能拿到正确数据,我当时以为是cookie之类的要同步,结果折腾半天硬是不行,后台仔细一看,demo请求中有个头 Authorization: Basic xxxxxxxxxxxxxxx,原来要带上这个基本认认证头,但是问题又来了,那个Basic要怎么来呢?通过翻阅资料得到:这是 HTTP基本认证是一种用来允许Web浏览器,或其他客户端程序在请求时提供以用户名和口令形式的凭证的登录方式。用户名追加一个冒号然后串接上口令,得出的结果字符串再用Base64算法编码,就是这个Basic 的值了。这个小细节花费了我半天功夫,还是太大意了,一直以为自己对http协议很熟悉,结果栽了。引以为戒,谨慎积累。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值