记录一些免费的 API接口

主要记录一些日常开发中可以使用到的一些免费api接口,目前包括 ip地址查询、天气查询

通过 IP 查询地址

ip-api (不支持 https)

💡 api接口文档

🕹 调用接口

$ curl http://ip-api.com/json

📝 返回信息(位置信息,服务器的经纬度、时区)

{"query": "24.48.0.1","status": "success","country": "Canada","countryCode": "CA","region": "QC","regionName": "Quebec","city": "Montreal","zip": "H3V","lat": 45.4998,"lon": -73.6087,"timezone": "America/Toronto","isp": "Le Groupe Videotron Ltee","org": "Videotron Ltee","as": "AS5769 Videotron Telecom Ltee"
}

补充:

http://ip-api.com/json/  # 国际化英文显示

http://ip-api.com/json/?lang=zh-CN  # 中文显示

http://ip-api.com/json/115.191.200.34?lang=zh-CN  # 查询某个ip的信息


ipapi (支持 https)

💡 api接口文档

🕹 调用接口

$ curl https://ipapi.co/json/

📝 返回信息(位置信息,服务器的经纬度、时区)

{"ip": "8.8.8.8","network": "8.8.8.0/24","version": "IPv4","city": "Mountain View","region": "California","region_code": "CA","country": "US","country_name": "United States","country_code": "US","country_code_iso3": "USA","country_capital": "Washington","country_tld": ".us","continent_code": "NA","in_eu": false,"postal": "94043","latitude": 37.42301,"longitude": -122.083352,"timezone": "America/Los_Angeles","utc_offset": "-0800","country_calling_code": "+1","currency": "USD","currency_name": "Dollar","languages": "en-US,es-US,haw,fr","country_area": 9629091.0,"country_population": 327167434,"asn": "AS15169","org": "GOOGLE"
}

百度地图api (支持HTTP/HTTPS)

相对于上面提到的两个api,百度地图api适合在国内使用,不支持海外场景,返回的经纬度坐标是当前城市中心点,使用时需要先申请AK,获取到国内的详细地址信息,在有些场景下还是很有用的。如果使用场景需要精确的经纬度,可以再调用一个 百度api 的 地理编码,使用详细地址转换到对应经纬度。

💡 开发文档的地址

🕹 调用接口

// 其中需要注意的是: ak 是必填的,其他几个参数可选。
//HTTP协议 
http://api.map.baidu.com/location/ip?ak=您的AK&ip=您的IP&coor=bd09ll //HTTPS协议
https://api.map.baidu.com/location/ip?ak=您的AK&ip=您的IP&coor=bd09ll 

📝 返回信息(位置信息,服务器的经纬度、时区)

{"address": "CN|北京市|北京市|None|None|95|95","content": {"address": "北京市","address_detail": {"adcode": "110000","city": "北京市","city_code": 131,"district": "","province": "北京市","street": "","street_number": ""},"point": {"x": "116.41338370","y": "39.91092455"}},"status": 0
}

🗝 申请AK

创建应用

在这里插入图片描述

在创建应用时候可以勾选全部的基础服务

在这里插入图片描述

需要注意的是:ip白名单不建议使用 0.0.0.0/0 可以使用具体的ip名称。

天气查询 API

使用百度开放API,必须搭配AK使用,AK的获取方法上面已经提到了。

💡 开发文档的地址

🕹 调用接口


https://api.map.baidu.com/weather/v1/?district_id=222405&data_type=all&ak=你的ak
//GET请求

{"status": 0,"result": {"location": {"country": "中国","province": "吉林省","city": "延边朝鲜族自治州","name": "龙井","id": "222405"},"now": {"text": "多云","temp": -9,"feels_like": -13,"rh": 49,"wind_class": "3级","wind_dir": "西北风","prec_1h": 0,"clouds": 70,"vis": 8300,"aqi": 21,"pm25": 5,"pm10": 10,"no2": 4,"so2": 5,"o3": 67,"co": 0.5,"uptime": "20231124131000"},"indexes": [{"name": "晨练指数","brief": "较不宜","detail": "室外锻炼注意保暖避风防滑。"},{"name": "洗车指数","brief": "适宜","detail": "天气较好,适合擦洗汽车。"},{"name": "感冒指数","brief": "易发","detail": "天凉,易感冒"},{"name": "紫外线指数","brief": "强","detail": "涂擦 SPF20左右,PA++,避免强光。"},{"name": "穿衣指数","brief": "冷","detail": "建议着棉衣加羊毛衫等冬季服装。"},{"name": "运动指数","brief": "较不宜","detail": "推荐您在室内进行低强度运动。"}],"alerts": [],"forecasts": [{"text_day": "晴","text_night": "晴","high": -5,"low": -12,"wc_day": "3~4级","wd_day": "西风","wc_night": "3~4级","wd_night": "西风","date": "2023-11-24","week": "星期五"},....]}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/170212.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

easyx的基本使用<一>(万字解析)

easyx的基本使用 一.基本框架1.创建文件2.创建窗体-initgraph,closegraph,getchar 二.简单的绘制1.圆形-circle2.坐标系统-setorigin,setaspectratio 三.简单图形1.绘制点-putpixel2.简单的直线-line3.矩形-rectangle4.椭圆-ellipse5.圆角矩形-roundrect6.扇形-pie7.圆弧-arc 四…

ElasticSearch01

ElasticSearch 版本:7.8 学习视频:尚硅谷 笔记:https://zgtsky.top/ ElasticSearch介绍 Elaticsearch,简称为es, es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据&#xff1b…

JMeter 测试脚本编写技巧

JMeter 是一款开源软件,用于进行负载测试、性能测试及功能测试。测试人员可以使用 JMeter 编写测试脚本,模拟多种不同的负载情况,从而评估系统的性能和稳定性。以下是编写 JMeter 测试脚本的步骤。 第 1 步:创建测试计划 在JMet…

JVM——垃圾回收(方法区中的垃圾回收和(堆回收)自动垃圾回收)

目录 1.自动垃圾回收介绍1.C/C的内存管理2.Java的内存管理3.垃圾回收的对比 2.方法区的回收方法区的回收 – 手动触发回收 3.堆回收1.引用计数法2.可达性分析算法 1.自动垃圾回收介绍 1.C/C的内存管理 ⚫ 在C/C这类没有自动垃圾回收机制的语言中,一个对象如果不再…

C语言—什么是数组名

#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h> int main() {int arr[]{1,2,3,4};printf("%p\n",arr);printf("%p\n",&arr);printf("%p\n",*arr);return 0; } 结论&#xff1a;数组名是数组首元素地址&#xff08;下标为0的元素…

Vatee万腾独特科技力量的前沿探索:Vatee的数字化奇点

在当今科技的浪潮中&#xff0c;Vatee万腾以其独特的科技力量成为前沿探索的引领者&#xff0c;正迎来数字化奇点的新时代。Vatee万腾不仅仅是一家科技公司&#xff0c;更是一支探索未知领域、开创数字时代新局面的先锋力量。 Vatee万腾的数字化奇点体现在其对前沿技术的深刻理…

MFC设置单选按钮点击自己可以可选和不可选

mfc是c的一个框架&#xff0c;可谓是经久不衰。最近博主遇到一个问题&#xff0c;就是单选按钮点击自己可以设置可选和不可选&#xff0c;貌似类似复选框一样&#xff0c;但领导分发的任务上要求的是用单选按钮实现复选框这种类似功能&#xff0c;实现效果类似如下图&#xff1…

【Java】认识异常

文章目录 一、异常的概念和体系结构1.异常的概念2.异常的体系结构3.异常的分类 二、异常的处理1.防御式异常2.异常的抛出3.异常的捕捉 三、异常的处理流程四、自定义异常类 一、异常的概念和体系结构 1.异常的概念 在Java中&#xff0c;将程序执行过程中发生的不正常行为称为…

Redis实战篇(一)短信登录

Redis实战篇&#xff08;一&#xff09;短信登录 1.1、导入黑马点评项目 1.1.1 、导入SQL 1.1.2、有关当前模型 手机或者app端发起请求&#xff0c;请求我们的nginx服务器&#xff0c;nginx基于七层模型走的事HTTP协议&#xff0c;可以实现基于Lua直接绕开tomcat访问redis&a…

截图转HTML代码,支持预览,前端不用浪费时间写html和css了

截图转代码 试用地址&#xff1a;https://picoapps.xyz/free-tools/screenshot-to-code 这个简单的应用可以将截图转换为HTML/Tailwind CSS代码。它使用GPT-4 Vision来生成代码&#xff0c;并使用DALL-E 3来生成类似的图像。现在你也可以输入一个URL来克隆一个现有的网站&#…

RuntimeError: CUDA error: device-side assert triggered

背景&#xff1a; 使用SAGEConv卷积层的图神经网络&#xff0c;网络架构如下 原因&#xff1a; 我在卷积层之前改变了特征矩阵的维度&#xff0c;原本为[172,1,32] 现在改为了 [172,2,32]。导致了特征矩阵x在进行 “x x.squeeze(1)” 操作时并没有将第二向量值去除&#xff08…

蓝桥杯每日一题2023.11.25

题目描述 “蓝桥杯”练习系统 (lanqiao.cn) 题目分析 对于此题目最开始是递归想法&#xff0c;但发现题意中的匹配次数实际上是指在这8个字母中这8个字母每个字母对应的个数是否相同&#xff0c;如果相同则匹配。 此处我们可以使用subsrtr函数&#xff0c;每次循环截取8个字…

印刷基板开孔机上的直线导轨怎么安装?

直线导轨是属于高精度的传动元件&#xff0c;作为印刷基板开孔机重要的传动元件&#xff0c;倘若安装不当&#xff0c;严重则无法正常作业&#xff0c;轻则影响直线导轨的精度和寿命。那么&#xff0c;印刷基板开孔机的直线导轨是如何安装的呢&#xff1f; 在安装前&#xff0c…

中通单号查询,中通快递物流查询,将途经指定城市的单号筛选出来

批量查询中通快递单号的物流信息&#xff0c;并将途经指定城市的单号筛选出来。 所需工具&#xff1a; 一个【快递批量查询高手】软件 中通快递单号若干 操作步骤&#xff1a; 步骤1&#xff1a;运行【快递批量查询高手】软件&#xff0c;第一次使用的朋友记得先注册&#x…

【差旅游记】走进新疆哈密博物馆

哈喽&#xff0c;大家好&#xff0c;我是雷工&#xff01; 前些天在新疆哈密时&#xff0c;有天下午有点时间&#xff0c;看离住的宾馆不远就是哈密博物馆&#xff0c;便去逛了逛博物馆&#xff0c;由于接下来的一段时间没顾上记录&#xff0c;趁今天有些时间简单记录下那短暂的…

STM32 CAN协议讲解以及代码

STM32 CAN 文章目录 STM32 CAN前言一、CAN外设1.主控制寄存器CAN_MCR2.位时序寄存器CAN_BTR3.CAN的发送邮箱4.CAN的接收FIFO5.验收筛选器 二、代码配置1.初始化2.发送数据3.接收数据4.main.c 前言 前面学习了CAN的一些理论知识&#xff0c;他在我们的STM32里面是怎么用的呢 前…

【手写实现一个简单版的Dubbo,深刻理解RPC框架的底层实现原理】

手写实现一个简单版的Dubbo&#xff0c;深刻理解RPC框架的底层实现原理 RPC框架简介了解Dubbo的实现原理服务暴露服务引入服务调用 手写实现一个简单版的Dubbo服务暴露ServiceBeanProxyFactory#getInvokerProtocol#exportRegistryProtocol#export 服务引入RegistryProto#referD…

matlab画双坐标图的样式

matlab画双坐标图的样式 %% clc,clear,close all; t0:0.1:9*pi; figure; [AX,Ha,Hb]plotyy(t,sin(t),t,exp(t)); % 绘图并创建句柄 % ----------------- 设置刻度 set(AX(1),yTick,[-1.250:0.25:1.25]) % 设置左边Y轴的刻度 set(AX(2),yTick,[0:50:350]) …

服务器连接github

https://zhuanlan.zhihu.com/p/543490354 比着这个一步步做就行。 https://blog.l0v0.com/posts/94ffdbdf.html 上传文件可以看这个 注意&#xff1a; 密钥ssh-keygen设置好之后&#xff0c;以后就不用每次输入账号密码才能访问了。 otherwise&#xff0c;每次要输入账号密码。…

文件批量改名方法:文件自动批量重命名,提升文件管理效率

在日常工作中随着工作时间的推移&#xff0c;在文件数量日益增长的情况下&#xff0c;会在电脑中积累大量的文件。如果文件名混乱无序&#xff0c;查找和识别重要文件将变得非常困难。这不仅会浪费大量的时间和精力&#xff0c;还可能导致重要文件的丢失或混乱。文件批量改名可…