English 简体中文 繁體中文 한국 사람 日本語 Deutsch русский بالعربية TÜRKÇE português คนไทย french

简体中文 繁體中文 English 日本語 Deutsch 한국 사람 بالعربية TÜRKÇE คนไทย Français русский

回答

收藏

Telegram 小程序 | TypeScript @telegram-apps/sdk @2.x | 组件 | 初始数据

开源社区 开源社区 10852 人阅读 | 0 人回复 | 2025-02-25

初始数据

负责 Telegram Mini Apps init data 的💠组件


( @+ s% K1 W3 c7 P5 Q5 [恢复

要恢复组件状态,请使用 restore 方法。

Variable :

  1. import { initData } from '@telegram-apps/sdk';6 |& K4 N1 `( j% l& x* a8 k

  2. 3 ~" x. s- ^0 o4 I; d5 H
  3. initData.restore();
复制代码

Functions :

  1. import { restoreInitData } from '@telegram-apps/sdk';
    % o9 M, Y1 h; a
  2. 8 b6 H% O0 ]8 ?& V2 P
  3. restoreInitData();
复制代码
解析

要将值解析为初始数据,请使用 parseInitData 函数。

  1. import { parseInitData } from '@telegram-apps/sdk';
    ( x2 r+ ^' k" ]! q6 N: \5 c/ E

  2. * P) U+ z- v1 M, i* r8 D
  3. const initData = parseInitData();, T0 k2 {- k: G$ Z, ?: R
  4. // {
    4 T* x! T2 y2 ^- T& u! N( g
  5. //   user: {- A9 F6 \1 t( N% E
  6. //     id: 99281932,
    2 q5 _, e! N  l" G& a% x
  7. //     firstName: 'Andrew',
    5 l" H! c, L3 @3 E+ _3 V6 t6 \
  8. //     lastName: 'Rogue',4 O3 p: ^0 [! ?, Z- x
  9. //     username: 'rogue',
    - S) `* y8 c. A, u
  10. //     languageCode: 'en',$ ]' B0 s# v& r
  11. //     isPremium: true,
    ( D, C+ i" y# T' r* ]! a
  12. //     allowsWriteToPm: true,$ U5 c% K- k. k& D% w
  13. //   }," T/ W: G, P4 y0 a  A
  14. //   hash: 'abcedef123',% x% f! ^& h/ a( c" |* B: l/ H
  15. //   authDate: Date(1716922846000),$ G3 v3 E; r3 K  O$ r. o, c
  16. //   startParam: 'debug',
    3 G5 y  h3 x9 X; f
  17. //   chatType: 'sender',) r6 ^2 X, |4 H1 B+ o
  18. //   chatInstance: '8428209589180549439',- G/ I0 P' F3 |  @  i% m$ c) D1 y7 h
  19. // };
复制代码
该函数返回 init data 对象 ,其中包含深驼峰型属性。+ k( j' l5 a" o' ]. b
信号

本节提供了与启动数据有关的信号的完整列表。

authDate

返回类型:Date | undefined

初始化数据的创建日期。

Variable :

  1. initData.authDate(); // Date(1727368894000)
复制代码

Functions :

  1. import { initDataAuthDate } from '@telegram-apps/sdk';
    " H2 [3 c5 X  d6 V* y

  2. ( P# p  }, U  f/ T9 H$ S6 r1 E
  3. initDataAuthDate(); // Date(1727368894000)
复制代码
canSendAfter

返回类型:number | undefined

通过 方法 answerWebAppQuery 发送信息的秒数。

Variable :

  1. initData.canSendAfter(); // 3600
复制代码

Functions :

  1. import { initDataCanSendAfter } from '@telegram-apps/sdk';$ [$ Q5 _' H8 x! g1 p

  2. , h* v* g0 a" Q( Z- A) Z5 K$ ^+ }: V8 ^
  3. initDataAuthDate(); // 3600
复制代码
canSendAfterDate

返回类型:Date | undefined

canSendAfter,但作为日期。

Variable :

  1. initData.canSendAfterDate(); // Date(1727368897600)
复制代码

Functions :

  1. import { initDataCanSendAfterDate } from '@telegram-apps/sdk';# \+ e7 A- k5 R& E6 z- y

  2. 8 F0 X/ s3 S, z* p
  3. initDataCanSendAfterDate(); // Date(1727368897600)
复制代码
chat

返回类型:undefined 或 Chat,带驼峰形 属性。

包含通过附件菜单启动机器人的聊天数据的对象。

NOTE

返回超级群组、频道和群组聊天记录 - 仅适用于通过 附件菜单启动的迷你应用程序。

Variable :

  1. initData.chat();
    . f$ G! h6 u+ E$ ]" U0 u$ k
  2. // {
    . i1 {, l4 Q2 J5 h. V$ E7 _0 v0 W
  3. //   id: 7728725378876215,
      ?1 N: `0 z! h3 Y4 _
  4. //   type: 'group',
    ) E9 {8 [( C/ r/ }4 c* ], M
  5. //   title: '@BotFather',+ k: f- @# o' w; T% a6 A2 b
  6. //   photoUrl: 'https://example.com/image.png',6 J, ?# n! Q% B( P, x
  7. //   username: 'botfather'
    ! z- f  R9 U3 w# D* M- I6 j/ h# _- L
  8. // }
复制代码

Functions :

  1. import { initDataChat } from '@telegram-apps/sdk';  L# k) D* V. s; q7 q, W
  2. . E+ Y) k$ r+ S# \: C9 M5 y* Z5 W
  3. initDataChat();
    9 Y. Y5 O- Z0 ?. t# x& v
  4. // {
    3 S/ p9 u9 V& b$ d0 B! l/ ]
  5. //   id: 7728725378876215,
    8 M- m4 {+ I; X4 ^0 \) W
  6. //   type: 'group',
    4 a# Z0 f+ }- w- L, m0 ]
  7. //   title: '@BotFather',
    9 D9 t7 k9 ]. R' b7 a
  8. //   photoUrl: 'https://example.com/image.png',1 Q7 D8 e) I$ ~1 v
  9. //   username: 'botfather'
    ! y) Q# I* x' z! G7 U
  10. // }
复制代码
chatType

返回类型:string | undefined

打开迷你应用程序的聊天类型。 值:

  • sender
  • private
  • group
  • supergroup
  • channel
    7 w/ @9 z8 k, c6 T- E
9 M* A( R' w  X  O+ _$ w3 ]

NOTE

仅返回通过直接链接打开的申请

Variable :

  1. initData.chatType(); // 'group'
复制代码

Functions :

  1. import { initDataChatType } from '@telegram-apps/sdk';
    ; |- u3 N, R6 `& e
  2. + [5 c. X$ K0 {6 C+ V
  3. initDataChatType(); // 'group'
复制代码
chatInstance

返回类型:string | undefined

全局标识符,表示打开迷你应用的聊天窗口。

WARNING

仅返回通过直接链接打开的应用程序。

! W% f- O8 q/ N: b1 W

Variable :

  1. initData.chatInstance(); // 'group'
复制代码

Functions :

  1. import { initDataChatInstance } from '@telegram-apps/sdk';- q2 i! w2 S1 b
  2. ) z1 X/ j$ `& s9 V
  3. initDataChatInstance(); // '899667289674387257'
复制代码
hash

返回类型:string | undefined

初始化数据签名。

Variable :

  1. initData.hash(); // 'group'
复制代码

Function :

  1. import { initDataHash } from '@telegram-apps/sdk';
    $ V& `: W  h) v) A2 b% C; u) F5 I; `

  2. 9 S3 a6 E- i& x' [
  3. initDataHash(); // 'sgbbc62g3bvdhg3djsaasd'
复制代码
queryId

返回类型:string | undefined

迷你应用程序的唯一会话 ID。 在 通过 方法 answerWebAppQuery 发送信息的过程中使用。

Variable :

  1. initData.queryId(); // 'group'
复制代码

Functions :

  1. import { initDataQueryId } from '@telegram-apps/sdk';
    7 s+ j8 \- T, z6 r; h; }  G# S+ u
  2. 9 \$ ^# r2 X3 R8 e( p$ N0 C4 i
  3. initDataQueryId(); // 'ssVXZ231ger'
复制代码

返回类型:string | undefined

初始化数据的原始字符串。

Variable :

  1. initData.raw(); // 'user=...&chat=...&...'
复制代码

Functions :

  1. import { initDataRaw } from '@telegram-apps/sdk';
    0 @; W0 J# Z2 V9 B% @5 ^9 M3 _$ I+ {
  2. 0 k2 w, E0 _- d" X# I" X
  3. initDataRaw(); // 'user=...&chat=...&...'
复制代码
receiver

返回类型:undefined 或 User,带驼峰形 属性。

一个对象,包含当前用户在 聊天时的聊天伙伴数据,机器人是通过附件菜单启动的。

NOTE

仅对私人聊天和通过附件菜单启动的迷你应用程序返回。

Variable :

  1. initData.user();
    # g# F/ {( z' Z4 ]
  2. // {1 W# y$ B/ K9 V
  3. //   addedToAttachmentMenu: false,
      P. ?. V  V3 R  `
  4. //   allowsWriteToPm: true,
    6 b# e( w" P9 S1 ?; V" D+ }% A- h0 Z
  5. //   isPremium: true,0 ?3 d( i6 L5 F3 Q9 c. y. _
  6. //   firstName: 'Pavel',
    , u: A1 ~) f( _5 S
  7. //   id: 78262681,. \- u1 Y! |7 t7 A
  8. //   isBot: false,
    0 |% I& C3 H* r
  9. //   lastName: 'Durov',/ B* K" v1 ?7 @4 \# x# C6 e
  10. //   languageCode: 'ru',
    6 X9 e% g0 ?1 E: s* x- @* F
  11. //   photoUrl: 'https://example.com/image.png',
    ; {: u/ A! e& F
  12. //   username: 'durove',9 P) a0 C) O7 i
  13. // }
复制代码

Functions :

  1. import { initDataUser } from '@telegram-apps/sdk';0 n2 _4 v9 Z3 w' Y+ l
  2. 5 S+ v3 y2 I1 n2 O, R6 K
  3. initDataUser();- U8 u6 \7 C: j4 s
  4. // {. c. h9 J2 y5 s9 W. m! j
  5. //   addedToAttachmentMenu: false,
      }# k/ s, E  K+ V' n0 k: U2 v5 F- D
  6. //   allowsWriteToPm: true,
    9 @9 v: u' Y. V: h4 ~
  7. //   isPremium: true,
    , P8 c5 J: ^  R$ J
  8. //   firstName: 'Pavel',
    # [' e4 Z8 p- c6 j: c7 g
  9. //   id: 78262681,
    ( w! |) X! h, o9 q* K' v: Q
  10. //   isBot: false,( D3 Y) J8 p' t9 }% z8 V5 p+ Z
  11. //   lastName: 'Durov',
    $ Y" P* _- c& r7 J0 d
  12. //   languageCode: 'ru',2 [; |! k$ Z4 [
  13. //   photoUrl: 'https://example.com/image.png',% k7 I$ Q  _& R3 x, @/ Y4 g! I
  14. //   username: 'durove',& r$ e& D  T( V: z; _! ]
  15. // }
复制代码
state

返回类型:undefined 或 InitData,带有 深驼峰型属性。

包含对象格式初始化数据的对象。

Variable :

  1. initData.state();
复制代码

Functions :

  1. import { initDataState } from '@telegram-apps/sdk';* J0 D* b1 N; H" I* ?& }2 {
  2. ' Y% D3 f  R7 n- s
  3. initDataState();
复制代码
startParam

返回类型:string | undefined

链接中指定的 startattach 或 startapp 查询参数的值。

Variable :

  1. initData.startParam(); // 'my-value'
复制代码

Functions :

  1. import { initDataStartParam } from '@telegram-apps/sdk';  {4 h! f% S/ @2 ^& |

  2. % g" }4 j; t" F& D) e( F0 L, @2 F
  3. initDataStartParam(); // 'my-value'
复制代码
user

返回类型:undefined 或 User,带驼峰形 属性。

包含当前用户信息的对象。

Variable :

  1. initData.user();7 V, w6 f% o9 ?# b' B$ [) l4 g
  2. // {
    7 A3 y; [8 h/ I! o
  3. //   addedToAttachmentMenu: false,- e! A+ S  d2 h( P) N3 |# ^
  4. //   allowsWriteToPm: true,
    ( t' s3 l9 d3 G* _7 I
  5. //   isPremium: true,  g9 Y" r5 z% I( t( X) i
  6. //   firstName: 'Pavel',& u! T& V9 X: E# }2 ?
  7. //   id: 78262681,
    2 i" F% P3 L* J) P, ~
  8. //   isBot: false,4 B5 P; z0 v( d. P1 L+ m
  9. //   lastName: 'Durov',; L) b# P; E$ U8 u, U8 H
  10. //   languageCode: 'ru',/ _4 i( ?7 b4 ~; e5 {0 P
  11. //   photoUrl: 'https://example.com/image.png'," G8 }  X" X. p. u
  12. //   username: 'durove',
    ( f8 c9 \4 I9 `7 M4 M5 y% {
  13. // }
复制代码
Functions :# C6 k' o% f4 j$ O
  1. import { initDataUser } from '@telegram-apps/sdk';
    5 x3 x7 X- j6 T2 K
  2. 9 i6 h0 m+ @5 L, {% ~* k+ f2 [
  3. initDataUser();& ?" l4 v# x* j
  4. // {
    ; Z" m, _3 P% H) v0 p2 w! Q* w7 f
  5. //   addedToAttachmentMenu: false,
    8 b3 F, q" D$ M% z0 K
  6. //   allowsWriteToPm: true,. g2 U) P$ i5 O* X! P8 K8 T
  7. //   isPremium: true,
    : y" _& x- v$ ]5 i9 R0 H9 R1 I  R  ?
  8. //   firstName: 'Pavel',% ^5 E% Z2 }( Y1 o. a
  9. //   id: 78262681,
    7 Q, j( y# y8 F2 K. o% {0 }
  10. //   isBot: false,
    % K6 i/ j8 I1 l2 @4 g; K$ y
  11. //   lastName: 'Durov',
    0 e; N: ~. A, z/ Y
  12. //   languageCode: 'ru',
    # }# _' A3 _4 F+ w
  13. //   photoUrl: 'https://example.com/image.png',
    % e) L/ E: B. V# \) X
  14. //   username: 'durove',; P; |: I" L& f5 ~+ @2 X$ \$ Q
  15. // }
复制代码

5 C/ ]. D6 Y& S, Y% R' ?6 Q$ {  L& W" \  p1 W. a

/ J8 ^) y& t$ [; G+ i
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则