玄子Share-APISpace 教程调用 100+ 接口-全部接口免费试用

本文介绍了如何使用APISpace平台免费试用天气预报接口,通过注册账号、选择接口、购买及测试API,然后利用OkHttp在Java中编写代码示例来获取和解析天气数据。示例展示了调用15天天气预报接口的过程,包括设置请求头和处理响应。
摘要由CSDN通过智能技术生成

玄子Share-APISpace 教程调用 100+ 接口-全部接口免费试用

APISpace 介绍

APISpace 官网 https://www.apispace.com/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6FFvdx8G-1686235365740)(./assets/image-20230608215825096.png)]

APISpace 提供了上百个第三方的各类接口,包含以下类型

  • 短信
  • 环境天气
  • 网络通讯
  • 快递物流
  • IP查询
  • 实名核验
  • 数据智能
  • 企业工商
  • 交通地理
  • 生活常用
  • 教育文化

所有接口均可以免费试用,不论是用来练手还是部署都是可以的。

注册账号

要使用 APISpace 我们需要先注册一个账号,推荐直接使用扫码登录

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AZ7Sxcjt-1686235365741)(./assets/image-20230608220449289.png)]

选择接口

这里我们以天气预报的接口作为示例演示,左边侧边栏选择环境天气

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MfpZR40o-1686235365742)(./assets/image-20230608220839091.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LY7l7NPu-1686235365743)(./assets/image-20230608220941095.png)]

这里我买过了,就用别的演示,直接选择免费试用就可以了

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AzRgiSwW-1686235365743)(./assets/image-20230608221110103.png)]

购买后直接选择测试API

在这里插入图片描述

GET:请求API的地址

X-APISpace-Token:密钥

Authorization-Type:用户

在右边选择 代码示例 直接复制到IDEA中使用

代码编写

IDEA 新建 Maven 项目

因为代码示例中使用了 okhttp 包所以我们需要导入对应的依赖

<dependency>
    <groupId>com.squareup.okhttp3</groupId>
    <artifactId>okhttp</artifactId>
    <version>4.9.1</version>
</dependency>

官方模板

OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
Request request = new Request.Builder()
  .url("https://eolink.o.apispace.com/456456/weather/v001/day?days=15&areacode=101010100&lonlat=116.407526,39.904030")
  .method("GET",null)
  .addHeader("X-APISpace-Token","")
  .addHeader("Authorization-Type","")
  .build();

Response response = client.newCall(request).execute();
System.out.println(response.body().string());

解析一下官网提供的模板,我们需要用到的参数有

  • .addHeader():密钥
  • .addHeader():用户
  • .url()
    • days=15 查询天数
    • areacode=101010100 查询城市ID
    • lonlat=经纬度 查询城市经纬度
    • areacode与lonlater二选一即可

编写工具类

package com.xuanzi.util;

import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

import java.io.IOException;

public class weather15 {
    private static final String X_API_SPACE_TOKEN = "你的 X-APISpace-Token:密钥";
    private static final String AUTHORIZATION_TYPE = "你的 Authorization-Type:用户";
    private static final String CONTENT_TYPE = "application/x-www-form-urlencoded";

    public static String getWeatherMessage(String areacode) {
        OkHttpClient client = new OkHttpClient().newBuilder().build();
        MediaType mediaType = MediaType.parse(CONTENT_TYPE);
        Request request = new Request.Builder()
                .url("https://eolink.o.apispace.com/456456/weather/v001/day?days=15&areacode=" + areacode)
                .method("GET", null)
                .addHeader("X-APISpace-Token", X_API_SPACE_TOKEN)
                .addHeader("Authorization-Type", AUTHORIZATION_TYPE)
                .build();

        try {
            Response response = client.newCall(request).execute();
            if (response.isSuccessful()) {
                String responseData = response.body().string();
                return responseData;
            } else {
                System.out.println("Request failed with code: " + response.code());
                return String.valueOf(response.code());
            }
        } catch (IOException e) {
            System.out.println("An error occurred: " + e.getMessage());
            return e.getMessage();
        }
    }
}

根据官方模板分析,我们就可以编写以下工具类,我们只需要调用 getWeatherMessage() 即可获取对应城市最近15天的天气预报

调用工具类

package com.xuanzi;


import com.alibaba.fastjson2.JSONObject;
import com.xuanzi.dao.SsqldMapper;
import com.xuanzi.util.weather15;
import org.apache.ibatis.session.SqlSession;

import static com.xuanzi.dao.MybatisUtil.getSqlSession;

public class Main {
    public static void main(String[] args) {
        String weatherMessage = weather15.getWeatherMessage("101010500");
        System.out.println(weatherMessage);
    }
}

调用方法传入,城市ID 返回查询结果 JSON 类型

{"status":0,"result":{"location":{"areacode":"101010500","name":"怀柔","country":"中国","path":"怀柔,北京市,北京市,中国"},"daily_fcsts":[{"text_day":"多云","code_day":"01","text_night":"多云","code_night":"01","high":34,"low":17,"wc_day":"3~4级","wd_day":"西北风","wc_night":"<3级","wd_night":"西北风","wa_day":300,"wa_night":300,"ws_day":4.0,"ws_night":1.8,"pop":1,"pressure":987,"maxrh":27,"minrh":8,"vis":10000,"clouds_day":0,"clouds_night":5,"uv":11,"date":"2023-06-08","week":"星期四"},{"text_day":"多云","code_day":"01","text_night":"晴","code_night":"00","high":34,"low":17,"wc_day":"<3级","wd_day":"西北风","wc_night":"<3级","wd_night":"东北风","wa_day":300,"wa_night":30,"ws_day":1.8,"ws_night":1.8,"pop":1,"pressure":984,"maxrh":36,"minrh":12,"vis":10000,"clouds_day":3,"clouds_night":0,"uv":11,"date":"2023-06-09","week":"星期五"},{"text_day":"小雨","code_day":"07","text_night":"多云","code_night":"01","high":31,"low":18,"wc_day":"<3级","wd_day":"东北风","wc_night":"<3级","wd_night":"北风","wa_day":30,"wa_night":341,"ws_day":1.8,"ws_night":1.8,"pop":6,"pressure":986,"maxrh":49,"minrh":19,"vis":10000,"clouds_day":34,"clouds_night":55,"uv":11,"date":"2023-06-10","week":"星期六"},{"text_day":"多云","code_day":"01","text_night":"多云","code_night":"01","high":30,"low":16,"wc_day":"<3级","wd_day":"东北风","wc_night":"<3级","wd_night":"北风","wa_day":30,"wa_night":341,"ws_day":1.8,"ws_night":1.8,"pop":40,"pressure":970,"maxrh":63,"minrh":29,"vis":8875,"clouds_day":49,"clouds_night":54,"uv":9,"date":"2023-06-11","week":"星期日"},{"text_day":"多云","code_day":"01","text_night":"多云","code_night":"01","high":32,"low":18,"wc_day":"<3级","wd_day":"南风","wc_night":"<3级","wd_night":"北风","wa_day":165,"wa_night":341,"ws_day":1.8,"ws_night":1.8,"pop":5,"pressure":970,"maxrh":65,"minrh":20,"vis":10000,"clouds_day":16,"clouds_night":12,"uv":11,"date":"2023-06-12","week":"星期一"},{"text_day":"晴","code_day":"00","text_night":"晴","code_night":"00","high":33,"low":21,"wc_day":"<3级","wd_day":"南风","wc_night":"<3级","wd_night":"东北风","wa_day":165,"wa_night":30,"ws_day":1.8,"ws_night":1.8,"pop":0,"pressure":966,"maxrh":47,"minrh":14,"vis":10000,"clouds_day":0,"clouds_night":0,"uv":11,"date":"2023-06-13","week":"星期二"},{"text_day":"多云","code_day":"01","text_night":"多云","code_night":"01","high":34,"low":21,"wc_day":"<3级","wd_day":"西风","wc_night":"<3级","wd_night":"西风","wa_day":255,"wa_night":255,"ws_day":1.8,"ws_night":1.8,"pop":0,"pressure":966,"maxrh":40,"minrh":15,"vis":10000,"clouds_day":0,"clouds_night":0,"uv":11,"date":"2023-06-14","week":"星期三"},{"text_day":"晴","code_day":"00","text_night":"晴","code_night":"00","high":36,"low":22,"wc_day":"<3级","wd_day":"南风","wc_night":"<3级","wd_night":"东南风","wa_day":165,"wa_night":120,"ws_day":1.8,"ws_night":1.8,"pop":1,"pressure":969,"maxrh":45,"minrh":20,"vis":10000,"clouds_day":0,"clouds_night":6,"uv":11,"date":"2023-06-15","week":"星期四"},{"text_day":"晴","code_day":"00","text_night":"晴","code_night":"00","high":37,"low":22,"wc_day":"<3级","wd_day":"南风","wc_night":"<3级","wd_night":"北风","wa_day":165,"wa_night":341,"ws_day":1.8,"ws_night":1.8,"pop":0,"pressure":972,"maxrh":53,"minrh":19,"vis":10000,"clouds_day":0,"clouds_night":4,"uv":9,"date":"2023-06-16","week":"星期五"},{"text_day":"阵雨","code_day":"03","text_night":"晴","code_night":"00","high":37,"low":23,"wc_day":"<3级","wd_day":"南风","wc_night":"<3级","wd_night":"南风","wa_day":165,"wa_night":165,"ws_day":1.8,"ws_night":1.8,"pop":30,"pressure":972,"maxrh":47,"minrh":19,"vis":9625,"clouds_day":28,"clouds_night":57,"uv":5,"date":"2023-06-17","week":"星期六"},{"text_day":"阵雨","code_day":"03","text_night":"雨","code_night":"301","high":32,"low":23,"wc_day":"<3级","wd_day":"南风","wc_night":"<3级","wd_night":"东南风","wa_day":165,"wa_night":120,"ws_day":1.8,"ws_night":1.8,"pop":40,"pressure":972,"maxrh":53,"minrh":29,"vis":8875,"clouds_day":76,"clouds_night":97,"uv":5,"date":"2023-06-18","week":"星期日"},{"text_day":"多云","code_day":"01","text_night":"雨","code_night":"301","high":32,"low":20,"wc_day":"<3级","wd_day":"南风","wc_night":"<3级","wd_night":"南风","wa_day":165,"wa_night":165,"ws_day":1.8,"ws_night":1.8,"pop":65,"pressure":970,"maxrh":63,"minrh":31,"vis":8500,"clouds_day":93,"clouds_night":100,"uv":8,"date":"2023-06-19","week":"星期一"},{"text_day":"雨","code_day":"301","text_night":"阵雨","code_night":"03","high":31,"low":21,"wc_day":"<3级","wd_day":"南风","wc_night":"<3级","wd_night":"南风","wa_day":165,"wa_night":165,"ws_day":1.8,"ws_night":1.8,"pop":90,"pressure":968,"maxrh":60,"minrh":33,"vis":7000,"clouds_day":100,"clouds_night":81,"uv":4,"date":"2023-06-20","week":"星期二"},{"text_day":"晴","code_day":"00","text_night":"晴","code_night":"00","high":34,"low":21,"wc_day":"<3级","wd_day":"南风","wc_night":"<3级","wd_night":"北风","wa_day":165,"wa_night":341,"ws_day":1.8,"ws_night":1.8,"pop":30,"pressure":968,"maxrh":64,"minrh":26,"vis":9625,"clouds_day":16,"clouds_night":21,"uv":9,"date":"2023-06-21","week":"星期三"},{"text_day":"晴","code_day":"00","text_night":"晴","code_night":"00","high":36,"low":22,"wc_day":"<3级","wd_day":"西南风","wc_night":"<3级","wd_night":"西南风","wa_day":210,"wa_night":210,"ws_day":1.8,"ws_night":1.8,"pop":10,"pressure":968,"maxrh":56,"minrh":21,"vis":10000,"clouds_day":18,"clouds_night":24,"uv":9,"date":"2023-06-22","week":"星期四"}],"last_update":"2023-06-08 22:30"}}

总结

综上所述,使用 APISpace 我们可以十分方便快捷的调用第三方接口,其他接口的调用方式都大同小异,直接套用,写好的工具类即可

国内城市(3405站).sql

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值