基于JAVA的黄金数据接口调用代码实例
来源:互联网 发布:汛情数据统计 编辑:程序博客网 时间:2024/05/22 13:09
1. [代码][Java]代码 跳至 [1] [全屏预览]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
import
java.io.BufferedReader;
import
java.io.DataOutputStream;
import
java.io.IOException;
import
java.io.InputStream;
import
java.io.InputStreamReader;
import
java.io.UnsupportedEncodingException;
import
java.net.HttpURLConnection;
import
java.net.URL;
import
java.net.URLEncoder;
import
java.util.HashMap;
import
java.util.Map;
import
net.sf.json.JSONObject;
/**
*黄金数据调用示例代码 - 聚合数据
*在线接口文档:http://www.juhe.cn/docs/29
**/
public
class
JuheDemo {
public
static
final
String DEF_CHATSET =
"UTF-8"
;
public
static
final
int
DEF_CONN_TIMEOUT =
30000
;
public
static
final
int
DEF_READ_TIMEOUT =
30000
;
public
static
String userAgent =
"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36"
;
//配置您申请的KEY
public
static
final
String APPKEY =
"*************************"
;
//1.上海黄金交易所
public
static
void
getRequest1(){
String result =
null
;
String url =
"http://web.juhe.cn:8080/finance/gold/shgold"
;//请求接口地址
Map params =
new
HashMap();
//请求参数
params.put(
"key"
,APPKEY);
//APP Key
params.put(
"v"
,
""
);
//JSON格式版本(0或1)默认为0
try
{
result =net(url, params,
"GET"
);
JSONObject object = JSONObject.fromObject(result);
if
(object.getInt(
"error_code"
)==
0
){
System.out.println(object.get(
"result"
));
}
else
{
System.out.println(object.get(
"error_code"
)+
":"
+object.get(
"reason"
));
}
}
catch
(Exception e) {
e.printStackTrace();
}
}
//2.上海期货交易所
public
static
void
getRequest2(){
String result =
null
;
String url =
"http://web.juhe.cn:8080/finance/gold/shfuture"
;//请求接口地址
Map params =
new
HashMap();
//请求参数
params.put(
"key"
,APPKEY);
//APP Key
params.put(
"v"
,
""
);
//JSON格式版本(0或1)默认为0
try
{
result =net(url, params,
"GET"
);
JSONObject object = JSONObject.fromObject(result);
if
(object.getInt(
"error_code"
)==
0
){
System.out.println(object.get(
"result"
));
}
else
{
System.out.println(object.get(
"error_code"
)+
":"
+object.get(
"reason"
));
}
}
catch
(Exception e) {
e.printStackTrace();
}
}
//3.银行账户黄金
public
static
void
getRequest3(){
String result =
null
;
String url =
"http://web.juhe.cn:8080/finance/gold/bankgold"
;//请求接口地址
Map params =
new
HashMap();
//请求参数
params.put(
"key"
,APPKEY);
//APP Key
try
{
result =net(url, params,
"GET"
);
JSONObject object = JSONObject.fromObject(result);
if
(object.getInt(
"error_code"
)==
0
){
System.out.println(object.get(
"result"
));
}
else
{
System.out.println(object.get(
"error_code"
)+
":"
+object.get(
"reason"
));
}
}
catch
(Exception e) {
e.printStackTrace();
}
}
public
static
void
main(String[] args) {
}
/**
*
* @param strUrl 请求地址
* @param params 请求参数
* @param method 请求方法
* @return 网络请求字符串
* @throws Exception
*/
public
static
String net(String strUrl, Map params,String method)
throws
Exception {
HttpURLConnection conn =
null
;
BufferedReader reader =
null
;
String rs =
null
;
try
{
StringBuffer sb =
new
StringBuffer();
if
(method==
null
|| method.equals(
"GET"
)){
strUrl = strUrl+
"?"
+urlencode(params);
}
URL url =
new
URL(strUrl);
conn = (HttpURLConnection) url.openConnection();
if
(method==
null
|| method.equals(
"GET"
)){
conn.setRequestMethod(
"GET"
);
}
else
{
conn.setRequestMethod(
"POST"
);
conn.setDoOutput(
true
);
}
conn.setRequestProperty(
"User-agent"
, userAgent);
conn.setUseCaches(
false
);
conn.setConnectTimeout(DEF_CONN_TIMEOUT);
conn.setReadTimeout(DEF_READ_TIMEOUT);
conn.setInstanceFollowRedirects(
false
);
conn.connect();
if
(params!=
null
&& method.equals(
"POST"
)) {
try
{
DataOutputStream out =
new
DataOutputStream(conn.getOutputStream());
out.writeBytes(urlencode(params));
}
catch
(Exception e) {
// TODO: handle exception
}
}
InputStream is = conn.getInputStream();
reader =
new
BufferedReader(
new
InputStreamReader(is, DEF_CHATSET));
String strRead =
null
;
while
((strRead = reader.readLine()) !=
null
) {
sb.append(strRead);
}
rs = sb.toString();
}
catch
(IOException e) {
e.printStackTrace();
}
finally
{
if
(reader !=
null
) {
reader.close();
}
if
(conn !=
null
) {
conn.disconnect();
}
}
return
rs;
}
//将map型转为请求参数型
public
static
String urlencode(Map<String,Object>data) {
StringBuilder sb =
new
StringBuilder();
for
(Map.Entry i : data.entrySet()) {
try
{
sb.append(i.getKey()).append(
"="
).append(URLEncoder.encode(i.getValue()+
""
,
"UTF-8"
)).append(
"&"
);
}
catch
(UnsupportedEncodingException e) {
e.printStackTrace();
}
}
return
sb.toString();
}
}
0 0
- 基于JAVA的黄金数据接口调用代码实例
- 代码笔记 | 基于Python的净值数据接口调用代码实例
- 基于php的基金财务数据接口调用代码实例
- 基于php的地图坐标服务接口调用代码实例
- 基于php的银行卡实名认证接口调用代码实例
- 基于php的身份证实名认证接口调用代码实例
- 基于JAVA的货币汇率api调用代码实例
- 基于聚合数据的移动联通基站API接口的php完整代码实例
- java interface 接口 及 接口的调用 实例及误区
- java接口传递数据的实例
- 基于PHP的短信接口调用示例代码模板
- 基于python的短信接口调用代码示例模板
- 基于C#的短信接口调用示例代码模板
- 基于PHP的短信接口调用示例代码
- 基于java调用https接口
- 基于java调用https接口
- 调用接口的代码!
- C++调用java基于XFire的WebService接口
- EXCEL导入解析
- 界面之下:还原真实的 MVC、MVP、MVVM 模式
- 剑指Offer:打印1到最大的N位数
- AndroidStudio或IDEA中连接github失败:Can't login: Connect to api.github.com:443
- Unity协程(Coroutine)原理深入剖析
- 基于JAVA的黄金数据接口调用代码实例
- 3Sum Closest
- 实现页面登录后仍然跳回当前页面
- 对于结构化异常处理(SEH)的进一步探索
- HTTP响应头信息和请求头信息详解
- 03 Struts2入门案例
- java线程
- Java JSP(一) 基本原理和九个隐含对象
- Java正则解析命令行中大括号中的命令