市场要闻
使用 tigeropen::news::NewsClient 查询个股新闻和市场要闻,配置方式与该 SDK 的快速入门相同。资讯客户端使用主网关配置,查询资讯不需要抢占实时行情设备访问权。
get_market_news
pub async fn get_market_news(&self, req: NewsHighlightListRequest) -> Result<NewsPage, TigerError>
说明
查询市场要闻列表,对应 news_highlight_list。不传游标从最新文章开始;下一页使用上一页最后一条新闻的 ID。请求不含页码或每页条数,响应页码恒为 1。空 items 是正常成功结果。
参数
| 参数名 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
req.last_id | Option<String> | No | 上一页最后一条的 id;None 从最新开始 |
req.lang | Option<Language> | No | None 不发送;枚举为 ZhCn / ZhTw / EnUs |
返回
Result<NewsPage, TigerError>。
| 属性名 | 类型 | 描述 |
|---|---|---|
items | Vec<NewsItem> | 当前页资讯 |
page_count | i32 | 当前页码;市场要闻恒为 1 |
page_size | i32 | 每页条数 |
total_page | i32 | 总页数 |
total_size | i32 | 总条数 |
新闻条目具有以下属性:
| 属性名 | 类型 | 描述 |
|---|---|---|
id | String | 文章 ID,可作市场要闻下一页游标 |
title | String | 标题 |
summary | String | 摘要 |
pub_timestamp | i64 | 发布时间,秒级时间戳 |
url | String | 详情页 URL |
示例
use tigeropen::config::ClientConfig;
use tigeropen::model::enums::Language;
use tigeropen::model::news_requests::NewsHighlightListRequest;
use tigeropen::news::NewsClient;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let config = ClientConfig::builder().build()?;
let news_client = NewsClient::from_config(config);
let page = news_client.get_market_news(NewsHighlightListRequest {
lang: Some(Language::ZhCn), ..Default::default()
}).await?;
if let Some(last) = page.items.last() {
let next = news_client.get_market_news(NewsHighlightListRequest {
lang: Some(Language::ZhCn), last_id: Some(last.id.clone()),
}).await?;
println!("{}", next.items.len());
}
news_client.close();
Ok(())
}返回示例
以下 JSON 根据 SDK 固定测试数据构造,展示响应 data 的字段结构;实际调用返回上文列出的 SDK 对象。
{
"items": [
{
"id": "123456",
"title": "Apple Q2",
"summary": "Earnings beat",
"pubTimestamp": 1729413600,
"url": "https://example.com/news/123456"
}
],
"pageCount": 1,
"pageSize": 20,
"totalPage": 1,
"totalSize": 1
}请求频率
基础限流为 60 次/分钟。
Updated about 17 hours ago
Did this page help you?
