导入
基本事件详情
让我们学习如何使用 Discovery API 获取事件的详细信息。
...
使用事件端点获取事件详情
代码示例
1https://app.ticketmaster.com/discovery/v2/events/{id}
| 参数 | 类型 | 分类 | 说明 |
|---|---|---|---|
| id | string | 必填 | 用于获取详情的事件 ID。 |
| locale | string | 可选 | 使用 ISO 语言代码格式的区域设置。可提供多个以逗号分隔的值。若省略国家部分(仅 en 或 fr),则使用第一个匹配的区域设置。使用 * 时,匹配所有区域设置。默认值为 en。 |
| domain | array[string] | 可选 | 若提供,结果将根据事件可用的域名进行过滤。 |
1import fetch from "node-fetch"; 2 3const endpointUrl = new URL("https://app.ticketmaster.com/discovery/v2/events/{{EVENT_ID}}"); 4 5const queryParameters = new URLSearchParams({ 6 apikey: "{{API_KEY}}", 7}); 8 9const options = { 10 method: "GET", 11}; 12 13async function getEventDetails() { 14 try { 15 endpointUrl.search = queryParameters; 16 const response = await fetch(endpointUrl, options); 17 printResponse(response); 18 } catch (error) { 19 printError(error); 20 } 21} 22 23getEventDetails();
| 属性 | 类型 | 说明 |
|---|---|---|
| _links | object | 一个对象容器,包含指向相关场馆和演出项目数据集的链接,以及指向自身的一个链接。 |
| _embedded | object | 一个对象容器,包含两个属性:venues 和 attractions,分别存储与相关场馆和演出项目有关的详细信息。这些信息以对象数组的形式存放,每个对象代表一个场馆或演出项目。 |
| type | string | 实体类型。对于事件,该值为 event。 |
| id | string | 事件的唯一标识符。 |
| name | string | 事件的名称。 |
| description | string | 事件的描述信息。 |
| images | array[object] | 包含事件相关的图片信息。以对象数组形式表示,每个对象包含一张图片的相关信息。 |
| dates | object | 包含事件的日期信息,包括开始和结束时间,以及公众可购票的时间。 |
| sales | object | 包含销售时间的信息,包括公开售票和预售的起止时间。 |
| info | string | 与事件相关的其他信息。 |
| priceRanges | array[object] | 包含事件门票的价格区间信息。 |
| seatmap | object | 事件的座位图信息。该对象包含一个属性,即座位图的图片 URL。 |
| classifications | array[object] | 包含事件分类信息(如领域、流派、子流派、类型和子类型)。 |
事件的座位图是该活动在场馆内的座位布局图。
响应对象中包含一个名为 seatmap 的属性,其内部包含一个名为 staticUrl 的属性。staticUrl 存储了该事件座位图的图片链接。我们可以通过此信息查看某个事件的座位图:

1import fetch from "node-fetch"; 2 3const endpointUrl = new URL("https://app.ticketmaster.com/discovery/v2/events/{{EVENT_ID}}"); 4 5const queryParameters = new URLSearchParams({ 6 apikey: "{{API_KEY}}", 7}); 8 9const options = { 10 method: "GET", 11}; 12 13async function displaySeatmap(response) { 14 try { 15 const content = await response.json(); 16 17 // 检查事件是否包含座位图 18 if ("seatmap" in content) { 19 const seatmapUrl = content["seatmap"]["staticUrl"]; 20 console.log(`<img src='${seatmapUrl}' width=500px'>`); 21 } else { 22 console.log("此事件未找到座位图。"); 23 } 24 } catch (err) { 25 printError(err); 26 } 27} 28 29async function getEventDetails() { 30 try { 31 endpointUrl.search = queryParameters; 32 const response = await fetch(endpointUrl, options); 33 const { status } = response; 34 35 // 检查响应是否成功 36 if (status === 200) { 37 displaySeatmap(response); 38 } else { 39 printResponse(response); 40 } 41 } catch (error) { 42 printError(error); 43 } 44} 45 46getEventDetails();