You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Postman或Python Requests中同时使用API Key与Basic Auth?

同时使用Basic Auth与API Key的实现方法

Postman 操作步骤

Postman的预设认证面板只能选一种类型,但可以通过手动补充请求头实现双重认证:

  • 方案1:优先用Basic Auth面板,手动添加API Key头
    1. 进入请求的「Authorization」标签,选择「Basic Auth」类型,填写用户名和密码,Postman会自动生成Authorization: Basic xxx请求头
    2. 切换到「Headers」标签,手动添加API Key对应的字段(比如X-API-Key: 你的密钥,具体字段名以API文档要求为准)
  • 方案2:用API Key面板,手动构造Basic Auth头
    1. 在「Authorization」标签选择「API Key」类型,设置对应的键名和密钥值,Postman会自动添加该请求头
    2. 自行计算Basic Auth编码:将用户名:密码字符串用Base64编码,然后在「Headers」标签添加Authorization: Basic 编码后的字符串

Python requests 实现代码

requests库支持同时配置Basic Auth和API Key,两种写法都可行:

写法1:用requests内置auth参数处理Basic Auth

import requests

# 替换为实际的API地址、密钥、用户名和密码
api_url = "https://your-api-endpoint.com/path"
api_key = "your_api_key_here"
basic_auth_credentials = ("your_username", "your_password")

# 构造API Key请求头(字段名以API文档为准)
request_headers = {
    "X-API-Key": api_key
}

# 发送请求,同时传入auth和headers参数
response = requests.get(api_url, auth=basic_auth_credentials, headers=request_headers)

# 验证响应
print(f"状态码: {response.status_code}")
print(f"响应内容: {response.json()}")

写法2:手动构造所有认证头

import requests
import base64

api_url = "https://your-api-endpoint.com/path"
api_key = "your_api_key_here"
username = "your_username"
password = "your_password"

# 手动生成Basic Auth的Base64编码
auth_string = f"{username}:{password}"
auth_base64 = base64.b64encode(auth_string.encode("utf-8")).decode("utf-8")

# 同时包含两种认证的请求头
request_headers = {
    "Authorization": f"Basic {auth_base64}",
    "X-API-Key": api_key
}

response = requests.get(api_url, headers=request_headers)

print(f"状态码: {response.status_code}")
print(f"响应内容: {response.json()}")

内容的提问来源于stack exchange,提问作者abinitio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 15:44:59