接入教程
1. 阅读授权指南获取访问令牌
2. 调用API查询航班可用性
3. 解析返回的航班信息
4. 处理错误响应和限流
5. 在生产环境中测试集成
Python示例:查询航班可用性
python
import requests
# 设置API端点和认证信息
base_url = 'https://api.example.com'
api_key = 'YOUR_API_KEY'
# 请求头
headers = {
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json'
}
# 请求参数(示例)
payload = {
'origin': 'JFK',
'destination': 'LAX',
'departureDate': '2024-12-01',
'adults': 1
}
# 发送GET请求
response = requests.get(f'{base_url}/v1/flight-availabilities', headers=headers, params=payload)
# 处理响应
if response.status_code == 200:
data = response.json()
print('航班可用性数据:', data)
else:
print(f'请求失败,状态码: {response.status_code}')
print('错误信息:', response.text)
PHP示例:查询航班可用性
php
<?php
// API配置
$baseUrl = 'https://api.example.com';
$apiKey = 'YOUR_API_KEY';
// 请求头
$headers = [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json'
];
// 请求参数
$queryParams = http_build_query([
'origin' => 'JFK',
'destination' => 'LAX',
'departureDate' => '2024-12-01',
'adults' => 1
]);
// 初始化cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $baseUrl . '/v1/flight-availabilities?' . $queryParams);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// 执行请求
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($httpCode == 200) {
$data = json_decode($response, true);
echo '航班可用性数据: ' . print_r($data, true);
} else {
echo '请求失败,状态码: ' . $httpCode . '\n';
echo '错误信息: ' . $response;
}
curl_close($ch);
?>
JavaScript示例:查询航班可用性
javascript
// 使用fetch API查询航班可用性
const baseUrl = 'https://api.example.com';
const apiKey = 'YOUR_API_KEY';
// 请求参数
const params = new URLSearchParams({
origin: 'JFK',
destination: 'LAX',
departureDate: '2024-12-01',
adults: 1
});
// 发送GET请求
fetch(`${baseUrl}/v1/flight-availabilities?${params}`, {
method: 'GET',
headers: {
'Authorization': `Bearer ${apiKey}`,
'Content-Type': 'application/json'
}
})
.then(response => {
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
return response.json();
})
.then(data => {
console.log('航班可用性数据:', data);
})
.catch(error => {
console.error('请求失败:', error);
});
常见问题
如何获取API访问令牌?
请参考官方授权指南(https://developers.amadeus.com/self-service/apis-docs/guides/authorization-262)了解详细的令牌生成流程。通常需要注册开发者账号并创建应用来获取凭证。
测试环境和生产环境有什么区别?
测试环境基于生产环境的子集,包含有限的测试数据,主要用于开发和集成测试。生产环境包含完整的实时数据,需使用生产凭证访问。
API支持哪些查询参数?
基础参数包括起飞机场代码、到达机场代码、出发日期和乘客数量。具体支持的参数请参考API文档中的端点定义。
Aitishiku.com