百摩网
当前位置: 首页 生活百科

今日俄罗斯黄金期货(JavaHttpClient获取黄金价格数据)

时间:2023-08-03 作者: 小编 阅读量: 2 栏目名: 生活百科

黄金价格数据APIAPI提供方:https://www.nowapi.com/国际金价实时(盎司):https://www.nowapi.com/api/finance.gsgold国际金价实时(盎司)作用:查询上海黄金交易所黄金价格、国际公制金价、国际贵金属期货价、工行纸黄金等。测试示例:http://api.k780.com/?app=finance.gold_price&goldid=120

黄金价格数据API

API提供方:https://www.nowapi.com/

国际金价实时(盎司):https://www.nowapi.com/api/finance.gsgold

国际金价实时(盎司)

作用:查询上海黄金交易所黄金价格、国际公制金价、国际贵金属期货价、工行纸黄金等。

测试示例: http://api.k780.com/?app=finance.gold_price&goldid=1201&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=JSON (示例中sign会不定期调整)

调用参数:

返回格式:

{"result": {"dtList": {"1201": {"sell_price": "1716.73","high_price": "1719.2","goldid": "1201","uptime": "2022-07-22 13:58:01","varietynm": "现货黄金","variety": "XAU","change_margin": "-0.14%","yesy_price": "1718.65","buy_price": "1716.3","change_price": "-2.35","open_price": "1717.84","low_price": "1712.77","last_price": "1716.3"}},"dtQuery": "1201","dtCount": "1"},"success": "1"}

调用代码案例

pom.xml

<dependencies><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.5.9</version></dependency><dependency><groupId>org.apache.httpcomponents.client5</groupId><artifactId>httpclient5</artifactId><version>5.1</version></dependency><dependency><groupId>org.apache.httpcomponents.client5</groupId><artifactId>httpclient5-fluent</artifactId><version>5.0.3</version></dependency></dependencies>

调用方式1:

import org.apache.commons.codec.Charsets;import org.apache.hc.client5.http.classic.methods.HttpPost;import org.apache.hc.client5.http.entity.UrlEncodedFormEntity;import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;import org.apache.hc.client5.http.impl.classic.HttpClients;import org.apache.hc.core5.http.HttpEntity;import org.apache.hc.core5.http.NameValuePair;import org.apache.hc.core5.http.io.entity.EntityUtils;import org.apache.hc.core5.http.message.BasicNameValuePair;import java.util.ArrayList;import java.util.List;public class HttpClientClassicApp {public static void main(String[] args) throws Exception {CloseableHttpClient httpClient = HttpClients.createDefault();HttpPost httpPost = new HttpPost("http://api.k780.com/");List<NameValuePair> nvps = new ArrayList<>();nvps.add(new BasicNameValuePair("app", "finance.gold_price"));nvps.add(new BasicNameValuePair("goldid", "1201"));nvps.add(new BasicNameValuePair("appkey", "10003"));nvps.add(new BasicNameValuePair("sign", "b59bc3ef6191eb9f747dd4e83c99f2a4"));nvps.add(new BasicNameValuePair("format", "json"));httpPost.setEntity(new UrlEncodedFormEntity(nvps, Charsets.UTF_8));CloseableHttpResponse response = httpClient.execute(httpPost);System.out.println(response.getCode()" "response.getReasonPhrase());HttpEntity entity = response.getEntity();String content = EntityUtils.toString(entity);System.out.println(content);EntityUtils.consume(entity);}}

调用方式2:

import cn.hutool.json.JSONObject;import cn.hutool.json.JSONUtil;import org.apache.hc.client5.http.async.methods.*;import org.apache.hc.client5.http.config.requestConfig;import org.apache.hc.client5.http.impl.async.CloseableHttpAsyncClient;import org.apache.hc.client5.http.impl.async.HttpAsyncClients;import org.apache.hc.client5.http.impl.nio.PoolingAsyncClientConnectionManager;import org.apache.hc.client5.http.impl.nio.PoolingAsyncClientConnectionManagerBuilder;import org.apache.hc.core5.concurrent.FutureCallback;import org.apache.hc.core5.http.Method;import org.apache.hc.core5.http.message.StatusLine;import org.apache.hc.core5.pool.PoolConcurrencyPolicy;import org.apache.hc.core5.reactor.IOReactorConfig;import org.apache.hc.core5.util.TimeValue;import org.apache.hc.core5.util.Timeout;import java.util.concurrent.Future;import java.util.concurrent.TimeUnit;public class HttpClient5App {public static void main(String[] args) {// 异步应用配置IOReactorConfig ioReactorConfig = IOReactorConfig.custom().setSoTimeout(Timeout.ofMilliseconds(250))// 超时时间.setSelectInterval(TimeValue.ofMilliseconds(50))// 1.2.build();// setSoTimeout()====>连接上一个url,获取response的返回等待时间// setSelectInterval()====>NIO中设置select的间隔// 客户端连接配置PoolingAsyncClientConnectionManager build = PoolingAsyncClientConnectionManagerBuilder.create().setPoolConcurrencyPolicy(PoolConcurrencyPolicy.LAX)// 2.1.setMaxConnPerRoute(6).build();// 2.2// poolConcurrencyPolicy() ====> STRICT模式通过加锁的方式对,LAX通过cas的方式宽松计数// 设置STRICT,会使用StrictConnPool实现类;设置LAX ,会使用LaxConnPool实现类// maxConnPerRoute ====> 每个route最多能有多少个connection// 创建客户端CloseableHttpAsyncClient client = HttpAsyncClients.custom().setIOReactorConfig(ioReactorConfig).setConnectionManager(build).disableAutomaticRetries().build();// automaticRetriesDisabled===>关闭自动重试client.start();String uri = "http://api.k780.com/";SimpleHttpRequest httpRequest = SimpleHttpRequest.create(Method.GET.name(), uri);final SimpleHttpRequest request = SimpleRequestBuilder.copy(httpRequest).addParameter("app", "finance.gold_price").addParameter("goldid", "1201").addParameter("appkey", "10003").addParameter("sign", "b59bc3ef6191eb9f747dd4e83c99f2a4").addParameter("format", "json").build();request.setHeader("Host", "api.k780.com");RequestConfig config = RequestConfig.copy(RequestConfig.DEFAULT).setConnectTimeout(150, TimeUnit.MILLISECONDS).setConnectionRequestTimeout(200, TimeUnit.MILLISECONDS).setResponseTimeout(100, TimeUnit.MILLISECONDS).build();request.setConfig(config);long start = System.currentTimeMillis();final Future<SimpleHttpResponse> future = client.execute(SimpleRequestProducer.create(request),SimpleResponseConsumer.create(),new FutureCallback<SimpleHttpResponse>() {@Overridepublic void completed(final SimpleHttpResponse response) {System.out.println(request"->"new StatusLine(response));System.out.println(response.getBody());}@Overridepublic void failed(final Exception ex) {System.out.println(request"->"ex);}@Overridepublic void cancelled() {System.out.println(request" cancelled");}});// 时间计算try {SimpleHttpResponse simpleHttpResponse = future.get();JSONObject jsonObject = JSONUtil.parseObj(simpleHttpResponse.getBodyText());System.out.println("body="jsonObject);long end = System.currentTimeMillis();System.out.println("时间差:"(end - start));} catch (Exception e) {long end = System.currentTimeMillis();System.out.println("时间差:"(end - start));System.out.println(e);}// 线程等待try {Thread.sleep(10000);} catch (InterruptedException e) {e.printStackTrace();}}}

    推荐阅读
  • 成都话听起来土(最爱成都娱乐圈)

    成都话学起来,成都生活走起来!不管你来自哪个垰垰圪圪,还是前头那条该(街)抵拢倒拐,只要喜欢成都,那么就可以龙门阵摆起来!

  • 红河学院改名大学吗(关于红河学院的简介)

    以下内容希望对你有帮助!红河学院改名大学吗目前还没有。红河学院创建于1978年;是一所以自然科学和人文科学为骨干,理、工、农、经、管、教、艺术协调发展的省属公办综合性本科院校,是云南省立项建设硕士学位授权单位。截至2016年8月,学校占地1200余亩,建筑面积33.74万平方米,教学行政用房14.57万平方米,固定资产5.81亿元,教学科研仪器设备值8840.02万元,图书馆藏书85.06万册。

  • 欧洲华为手机和苹果手机价格(超越苹果与三星)

    根据咨询公司CounterpointResearch最新公布的数据,华为今年6月和7月在俄罗斯市场的智能手机销量首次超过苹果和三星。此前的2月分,华为在俄罗首次赶上苹果,成当地第二大手机品牌。报道称,与竞争对手相比,华为手机在发展中国家处于领先地位,这主要得益于其价格更实惠、性能更好、用户体验更加完善。外媒称,苹果流失的客户中70%都转向华为。资料显示,2013年至2018年这7年间,华为手机销量增长了51倍。

  • 辩论稿的格式是什么(辩论稿的格式说明)

    接下来我们就一起去了解一下吧!标题可点明辩论稿的中心,或标明中心事件,或标明中心的论题,最好让人看到标题就能了解辩论的内容正文一般分开头、主体、结尾三部分。主体是辩论稿的重点部分,要突出中心,用典型的材料,有力的分析,使听众点头赞同。结尾可归纳自己的见解,使听众有个完整的印象。结尾要有力,能给人启示和回味。署名是署辩论者的姓名,日期是辩论的日期。

  • 运动如何瘦身(这五大方法送给你)

    跳绳是一项可以锻炼到全身肌肉的运动项目,尤其针对臀部和大腿上的多余赘肉,还可以塑造手臂线条,热量消耗不容小觑。在水中运动,需要克服更大的压力和阻力,因此燃脂效果会更显著。此外,游泳能充分锻炼心肺功能,提高肺活量,从而增强体质、提高抵抗力。跑步是大多数人减肥的首选运动,它可以锻炼全身肌肉,帮助减肥。骑自行车,尤其适合体重基数大的小仙女,而且它相比于爬楼梯、跑步和跳绳,能减少对关节的损害。

  • 种鹿的配种年龄及时间(鹿的繁殖季节)

    1.配种年龄 鹿的性成熟年龄与其种类、性别、生长环境和个体发育等因素有关。梅花母鹿一般在生后15-18个月性即成熟,公鹿则为2岁半,性成熟后即可配种繁育。母鹿最适宜繁殖年龄为

  • 人间忽晚故人已去(秋日思语浮华褪尽)

    张爱玲说过,浮华退尽,人比烟花寂寞。这句话一说出,张爱玲的心就仿如一面深不可测的湖,即使被人投石问路,仍然波澜不惊。张爱玲为了无爱无恨地活着,她背井离乡、离群索居,为了被人无声无息地忘记,她选择和一个异国老者执手相望。此时的张爱玲对于是否幸福,感觉已不重要,她已誓与红尘决绝,再也不想回去了。但是,走着走着,不知道怎么回事,钱钟书竟不见了。

  • 最美的时光的好句子(最美的时光的好句子有哪些)

    下面内容希望能帮助到你,我们来一起看看吧!最美的时光的好句子清浅时光,似水流淌,走过的流年里,世间最无情的是时间,留不住的便是匆匆而过的年华,岁月在容颜上刻下了或深或浅的痕迹,光阴轻轻地带走四季的缤纷与繁华,注定了花开与花落,散落一地的芬芳,氤氲了生命的一程又一程,那最美的时光。时光,如岸边涂抹的沙画,一不小心被潮水带走了,那藏在沙中的故事也随着水流纳入了海的怀抱。

  • 构成利用会道门致人重伤罪既遂怎么处罚?

    犯利用迷信致人重伤罪的,处三年以上七年以下有期徒刑,并处罚金。犯第一款罪又有奸淫的妇女、诈骗财物等犯罪行为的,依照数罪并罚的规定处罚。

  • 威驰空调滤芯怎么换(威驰空调滤芯更换教程)

    下面希望有你要的答案,我们一起来看看吧!威驰空调滤芯怎么换打开副驾驶手套箱,一只手提着手套箱,另一只手按住手套箱底部向里推,取出手套箱。取下手套箱就可以看见空调滤芯的压板了,双手捏住压板两端卡扣,向外拉,去下滤芯压板。取下压板后就可以看见空调条滤芯了,抽出滤芯,更换新的滤芯,装好压板,手套箱即可。