|

API接口一般是指通过GET或POST的请求方式获取对应的信息,兼容各种开发语言,可以说任何开发环境都能使用,只要你懂得GET或POST。比如你要获取天气预报,那么找到对应的接口地址,提交对应的请求参数就能获得天气信息。无论你需要什么内容,基本都能找到对应的接口,这就是网络API的魅力。
下面是最新收集整理的免费API接口平台:
1:open weather
官网:https://openweathermap.org/
说明:openweather是美国一个提供全球免费天气预报的平台,同时还提供其他内容如自然灾害,地理位置cha询等,免费对外提供API,每个用户可免费享调用1000次/天。但我们可以通过注册多个账号来薅。
2:美国地质调查局
官网:https://www.usgs.gov/
说明:美国地质调查局是美国政府官方机构,提供包括地震等自然灾害信息,同时免费对外提供API调用。
3:天地图
官网:http://lbs.tianditu.gov.cn/home.html
说明:天地图是我国官方机构推出的地图服务,提供包含地图API,WEB端API,可cha询地理编码,行政区划,地图,路线规划等。任何个人和企业均可注册成为开发者免费使用,比商业地图公司良心多了。
4:接口盒子-五星推荐
官网:https://www.apihz.cn/
说明:接口盒子是由企业运营的免费API接口平台,提供包括天气预报,数据存储,图像壁纸,网络验证,语言翻译,二维码,人脸,地理cha询等数百种免费API接口。
特色:全自营接口,拥有集群化部署的服务器和网络节点,在免费API接口领域里是一个不可多得的稳定平台。
5:夏柔API
官网:https://api.aa1.cn/
说明:一个比较老的免费接口平台,除自身推出的免费API接口外,还提供API开发者入住,搜集了各种各式各样的接口。
6:FREE API
官网:https://www.free-api.com/
说明:也是一个比较老牌的免费API接口搜集平台,自身不直接提供接口,专门搜集网上各种免费的接口。
附:PHP-POST教程
<?php
// 接口地址
$url = 'https://www.test.com/test.php';
// POST 数据 设置对应的参数
$postData = [
'key1' => 'value1',
'key2' => 'value2'
];
// 初始化 cURL
$ch = curl_init();
// 基础配置
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true, // 返回响应内容而不是直接输出
CURLOPT_POST => true, // 启用 POST 请求
CURLOPT_POSTFIELDS => $postData, // POST 数据
]);
// 设置 HTTP 头部
$headers = [
'Content-Type: application/x-www-form-urlencoded',
'X-Custom-Header: MyValue',
'Accept-Language: en-US,en;q=0.9'
];
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
// 设置 Cookie
curl_setopt($ch, CURLOPT_COOKIE, 'user_token=abc123; session_id=def456');
// SSL 配置
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 禁用 SSL 证书验证
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 禁用主机名验证
// 超时设置
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); // 连接超时 10 秒
curl_setopt($ch, CURLOPT_TIMEOUT, 30); // 整体超时 30 秒
// 自动跳转配置
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // 启用自动跳转
curl_setopt($ch, CURLOPT_MAXREDIRS, 5); // 最多允许 5 次跳转
// 执行请求
$response = curl_exec($ch);
// 处理错误
if(curl_errno($ch)) {
echo 'cURL Error: ' . curl_error($ch);
exit;
}
// 获取响应信息
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$redirectUrl = curl_getinfo($ch, CURLINFO_REDIRECT_URL);
// 关闭资源
curl_close($ch);
// 输出结果
echo "HTTP 状态码: " . $httpCode . "\n";
echo "最终 URL: " . ($redirectUrl ?: $url) . "\n";
echo "响应内容:\n" . $response;
?>
|
|