iT邦幫忙

2021 iThome 鐵人賽

DAY 19
0
永豐金融APIs

視覺化跨平台Client與永豐金融證券APIs系列 第 19

視覺化當日趨勢圖(3)-取得python api方法

  • 分享至 

  • xImage
  •  

今天我們要來撰寫取得python api資料的方法,
首先先打開ShioajiServiceImpl.java檔案,
先創建一個叫test的方法,傳入的參數是個map(py_data),
然後注意到我們要連的api url,
我們使用這兩行,

@Value("${api.url}")
private String apiUrl;

可以取到設定檔中的路徑,
之後執行restTemplate.exchange,
第一個參數是連接的url路徑,第二個參數是http 方法,
完整程式如下,

@Service
public class ShioajiServiceImpl implements ShioajiService {
	
private static Logger log = LoggerFactory.getLogger(ShioajiServiceImpl.class);
	
	private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
	
	@Value("${api.url}")
	private String apiUrl;

	public String test(String tickdate) {
			
			log.info(" excute test time is {}", dateFormat.format(new Date()));
			String data = "";
			RestTemplate restTemplate = new RestTemplate();
			HttpEntity<String> entity = new HttpEntity<>(tickdate);
			try {
				ResponseEntity<String> getTick  = 
						restTemplate.exchange(
								apiUrl+"testdata?tickdate="+tickdate,
								HttpMethod.GET,
								entity, 
								new ParameterizedTypeReference<String>() {});
				
				data = getTick.getBody();
				System.out.println("data: "+data);
			}catch(Exception ex) {
				log.error(ex.getMessage(),ex);
				throw ex;
			}
	
			return data;
	}

明天繼續撰寫controller跟service的部分!


上一篇
視覺化當日趨勢圖(2)-client端設定檔&&建立controller、service
下一篇
視覺化當日趨勢圖(4)-controller撰寫
系列文
視覺化跨平台Client與永豐金融證券APIs30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言