mcpField
L
line-liff

line-liff

github.com/abgne开发198 次安装9 周前更新
代码仓库

关于 line-liff

line-liff 是用于在 LINE 中构建、审查和调试 LIFF Web 应用的开发技能。它要求按需查阅参考资料,以 API 规范和环境限制为依据处理实现与排错。

主要功能

  1. 01LIFF 开发与代码审查
  2. 02按主题查阅 API 参考
  3. 03检查认证与 URL 约束
  4. 04LIFF Server API 与 CLI 指引
  5. 05提供架构设计参考

适用场景

  1. 01搭建新的 LIFF Web 应用
  2. 02核对 LIFF 初始化和登录流程
  3. 03排查 API 可用性或 URL 问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/abgne/line-dev --skill line-liff

安装后在 Claude Code 中输入/line-liff确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
api.md
cli.md
experts.md
guidelines.md
navigation.md
plugins.md
server-api.md
server-auth.md

详细介绍

LINE LIFF(前端框架)

不要凭记忆回答 LIFF 相关问题——LINE 会频繁更新 API,训练数据并不可靠。请务必查阅以下参考资料。

用于在 LINE 内构建、审查和调试 LIFF Web 应用的参考资料。

工作流

构建
  1. 阅读 references/guidelines.md(注册、端点 URL 规则、环境兼容性)
  2. 加载正在实现的功能对应的参考资料
  3. 对于架构或设计选择,请查阅 references/experts.md 获取方向性指导
  4. 按照参考资料中的规范和限制编写代码
审查 / 调试
  1. 阅读 references/guidelines.md(URL 限制、身份验证流程、API 可用性)
  2. 加载与待审查代码相关的参考资料
  3. 根据规范交叉检查代码(端点 URL 规则、scope 要求、环境限制、初始化顺序)
  4. 对于设计模式相关问题,请查阅 references/experts.md
  5. 报告违反之处,并注明具体限制的参考资料

环境变量

LIFF_ID=LIFF app ID (from LINE Developers Console)
LINE_LOGIN_CHANNEL_ID=LINE Login Channel ID (for server-side JWT verification)
LINE_LOGIN_CHANNEL_SECRET=Channel secret (server-side only)
CHANNEL_ACCESS_TOKEN=Channel access token (for LIFF Server API — manage LIFF apps programmatically)

SDK

通过 CDN 或 npm 安装。若要进行 tree-shaking(减少约 34% 的包体积),请使用可插拔 SDK。

SDK 安装、CDN/npm 配置、可插拔 SDK → references/api.md § Pluggable SDK

初始化

liff.init({ liffId: 'YOUR_LIFF_ID', withLoginOnExternalBrowser: true })
  .then(() => { /* use LIFF APIs */ })
  .catch(err => console.error(err.code, err.message));
  • 必须在所有 LIFF API 之前调用(预初始化方法除外)
  • withLoginOnExternalBrowser: true — 在外部浏览器中自动触发登录
  • liff.ready — 在初始化完成时解析的 Promise

入门

  1. 在 LINE Developers Console 中创建 LINE Login channel
  2. 添加 LIFF app 并设置 Endpoint URL(必须使用 HTTPS)
  3. 集成 SDK,并调用 liff.init()
  4. 或使用 npx @line/create-liff-app 搭建项目(React/Vue/Svelte/Next.js/Nuxt/vanilla)

API 参考

完整的 API 参考(方法、参数、scope、可用性矩阵)→ references/api.md

视图尺寸

类型覆盖范围
Full屏幕的 100%
Tall约 75%
Compact约 50%

主要限制

  • Endpoint URL:liff.init() 仅在注册的 Endpoint URL 或其下级路径中有效
  • URL 处理:仅在 liff.init() 解析后修改 URL
  • 通用链接:使用 https://liff.line.me/{liffId} 作为主要入口点
  • 令牌安全:将原始 ID Token 发送到服务器进行验证,切勿暴露已解码的令牌 → 参见 server-auth.md
  • 登录行为有所不同:在 LIFF 浏览器中自动登录,在外部浏览器中手动登录
  • 已弃用的 API:liff.scanCode() → 使用 scanCodeV2();liff.getLanguage() → 使用 getAppLanguage();liff.permanentLink.createUrl() → 使用 createUrlBy()(可能会在 v3 中移除)

参考资料索引

文件主题
references/api.mdLIFF v2 API 完整参考、可插拔 SDK 模块、错误代码
references/guidelines.md注册、端点 URL 规则、身份验证流程、UI/UX、环境兼容性
references/navigation.mdLIFF URL、liff.state、永久链接、LIFF 到 LIFF 的跳转、浏览器最小化
references/plugins.mdLIFF 插件开发、钩子系统、官方插件(Inspector、Mock)
references/server-api.mdLIFF Server API(v1)— 以编程方式管理 LIFF app 的增删改查(创建、更新、列出、删除)
references/server-auth.md服务端 ID Token(JWT)验证
references/cli.mdLIFF CLI — 本地 HTTPS 开发服务器、app 增删改查、Inspector 调试、ngrok
references/experts.md提供架构指导的 LIFF 领域专家

SDK 与工具

评论

支持 Markdown