最近在开发中遇到一个这样的功能,调用GIO的下载数据的接口,从GIO把数据出来。GIO文档中提供的接口是这样的:
https://www.growingio.com/v2/projects/:project_id/charts/:chart_id.json
其中:project_id是你在gio官网上建立的项目后给分配的id,chart_id是你要下载的表格所对应的表格id。
如果你要下载的是一个项目中的几个表格,这样下载不同的表格就要两个不同的chart_id,你可以写两个方法分别调用两个不一样的下载接口。但是如果有10个表格要下载呢,你就要写10个方法,而这10方法中只有接口路径是不同的,这样就大大降低了代码的复用率。
在平常的开发中,我们都是把这样的固定不变的接口路径放在config.properties中,因为这个接口中chart_id是一个变量,这样在配置文件中配置的时候我们可以把这个chart_id位置放一个占位符,在程序中把这个占位符替换成对应的值,如下:这里我把project_id和chart_id两个都当做变量,所以写入了两个占位符。
config.properties:
api_url=https://www.growingio.com/v2/projects/{0}/charts/{1}.json
在代码中如何处理这个占位符呢?
首先使用注解获取到这个地址
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;