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

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

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

黄金价格数据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();}}}

    推荐阅读
  • 口臭怎么处理(口臭处理方法)

    饭后及时刷牙、漱口,可以利用牙线、牙间隙刷等工具来清理牙缝中间残留的食物,这样可以避免食物残渣在口腔中发酵引发更加难闻的味道。如果口臭是由于口腔健康出现问题导致的要及时对症治疗,比如患上了龋齿、牙周炎等疾病就容易导致口臭,需要去医院请医生进行相应的治疗。患者肠胃功能不好也会导致口臭,如果是这样的情况应该去消化科调理消化、肠胃,口臭的情况也会得到缓解,甚至消除。

  • 香菜吃多了有什么危害没有(香菜有几个死对头)

    医学上没有任何证据说明吃香菜会导致阳痿,完全是“无稽之谈”。香菜的味道并不是人为操作。香菜的特殊味道主要来自于它所含有的正癸醇、苯乙醛、甘露糖醇、芳香醇和壬醇等挥发油物质。香菜当中含有40多种化合物,这其中82%是醛类物质,17%是醇类物质。所以,喜欢吃香菜,大可放心食用。

  • 手鸡嘴狗猜成语(惨绿少年空心汤圆)

    诸侯们听说后称赞商汤德行很高,能自动网罗一切。悄悄透露一句,“无肠公子”竟然指的是动物!后指讲究装饰的青年男子。人要注意“审择左右”,亲贤者远小人,以趋利避害。形容毫无根据诬陷好人。比喻人态度温和慈爱,使人愿意接近。打得火热形容关系十分亲密。指出嫁的女儿心思朝外,向着丈夫。在他的衬托下,同事们都鹿鹿鱼鱼、被认为拿不出手。可惜好景不长,原上司转任,新上司只会给他空心汤圆。

  • 在什么红灯下可以右转(到底红灯的时候能右转吗?)

    要知道这个扣分不单单只是因为闯红灯,还有可能是以下两种情况,第一种就是有禁止右转标志的。很多司机只顾着右转却没有看到这样的标志,禁止右转标志其实还是蛮明显的,但是如果在这种情况下右转了,扣分是必然的,这样会被视为闯红灯,扣六分。另一种就是因为不礼让行人,在右转的时候司机应该避让行人,右转弯的车辆在不妨碍被放行车辆、行人通过的情况下可以通行,往往司机忘记了避让行人,这样的行为就会导致扣分。

  • 支付宝账户注销需要多长时间?(大家可以了解一下)

    接下来我们就一起去了解一下吧!支付宝账户注销需要多长时间若是通过支付宝官网/支付宝客户端提交销户申请,提交后实时审核,通过后就会注销成功。审核结果会优先邮件给账户Emall通知,若账户无邮箱,支付宝会通过短信通知;若是由支付宝小二人工提交销户申请,建议提交后1个工作日查询,可输入账户重新登录,提示该账户不存在即注销成功。

  • 360软件管家卸载怎么还原(卸载360管家吧用它清理)

    所需工具:腾讯文件,我来为大家科普一下关于360软件管家卸载怎么还原?尤其是微信、QQ这两个占内存的大头软件,动辄几个G的占存,却又敢怒不敢言,不能卸载,不敢上手清理……它专门针对微信、QQ两大毒瘤进行内存清理,并且分类非常细致。像学霸君在清理了微信和QQ文件之后,内存直接腾出了一个G,美滋滋。学霸君一般喜欢在删除文件之前先备份一下,即使删错了还可以吃「后悔药」!

  • 苦瓜炒鸭肉怎么做才好吃(苦瓜炒鸭肉的做法)

    苦瓜炒鸭肉怎么做才好吃将洗净的苦瓜对半切开去籽,先切成条,再斜刀切成块。洗净的红椒对半切开去籽,切成小块。把鸭肉片装入碗中,加入少许盐和鸡粉。淋入少许料酒,抓匀。加入适量食用油,腌渍10分钟。锅中加入适量清水烧开,加入食粉。倒入切好的苦瓜拌匀,煮约1.5分钟。把焯过水的苦瓜捞出备用。用油起锅,倒入姜片、蒜末、葱白爆香。放入鸭肉,翻炒至肉片转色。放入红椒,炒匀。在锅中倒入适量水淀粉。

  • 男人出轨时的常见心理(男人出轨后做了这三件事)

    搞婚外情不是已婚男人的隐私,所有的隐私都不能够伤害到其他人,伤害其他人那就不是隐私,那就叫秘密。陷在这种烦恼当中。隐私是避免你的行为暴露出去,会伤害到你,隐私是有很严格的一个限定的。所以只有正面的来应对这些事情,这个事情才开始揭开。实际上他暗度陈仓,实际上他把婚外情的这个技术做得更好更隐蔽。所以男人出现婚外情一般的情况下,有这三个方面的应对。

  • 勒的拼音(勒的组词)

    跟着小编一起来看一看吧!勒的拼音勒的拼音lè、lēi,组词如下:悬崖勒马[xuányálèmǎ]比喻到了危险的边缘,及时醒悟回头。敲诈勒索[qiāozhàlèsuǒ]依仗势力或抓住把柄进行恐吓,用威胁手段索取财物。勒紧裤带[lēijǐnkùdài]节制,尤指节制饮食压低生活水平;严格控制经济。勒脖子[lēibózi]粗暴地掐住脖子。

  • 樱桃嫁接时间和方法(樱桃嫁接时间和方法是什么)

    樱桃嫁接时间和方法樱桃的最佳嫁接时间一共有两次,第一次是在三月中下旬,此时是一个佳节,方法为劈嫁法和梭形芽接法。第二次是在秋季,大致时间在八月份下旬到九月份上旬之间,此时最适宜的嫁接方法为板片条状芽接法。在所有的嫁接方法中,枝接法最为常见,嫁接樱桃树的时候和其他植物一样,在此就不再赘述,但要注意把伤口包扎严实。削取接芽后嫁接捆绑:削取的砧面至少长25cm,宽1cm即可,这样可以加大接触表面,便于存活。