LLM URL缩短
用于与AI系统兼容的可预测URL缩短的Base64编码
概述
ZAGL使用Base64编码提供LLM友好的URL缩短,以实现可预测、可重现的短URL。这对于需要一致URL生成且无需API密钥或复杂身份验证的AI应用程序来说是理想的选择。
LLM兼容
专为AI系统设计
可预测
相同的URL始终生成相同的短代码
无需API密钥
简单的HTTP请求
API参考
编码URL
POST /api/llm/encode请求体
{ "url": "https://example.com/long/url/path" }
响应
{ "success": true, "data": { "shortUrl": "https://za.gl/e/aHR0cHM6Ly9...", "encoded": "aHR0cHM6Ly9leGFtcGxl...", "originalUrl": "https://example.com/...", "method": "base64", "expires": null, "createdAt": "2024-01-01T00:00:00Z" } }
访问短URL
GET /e/{base64}访问短URL将自动重定向到原始URL。Base64编码的字符串包含原始URL,可以可预测地解码。
分析
GET /api/llm/analytics?days=30&format=json获取LLM生成URL的分析数据。支持JSON和CSV格式。
查询参数
days: 天数(1-365,默认:30)format: 响应格式(json或csv,默认:json)
限制和规格
速率限制
- • 编码:: 60 requests/minute
- • 重定向:: 60 requests/minute
- • 分析:: 120 requests/minute
约束
- • 最大URL长度: 4KB
- • 协议: 仅HTTP、HTTPS
- • 私有IP: 出于安全考虑已阻止
- • 过期: 永不(永久URL)
代码示例
Python
llm_shortener.py
import base64 import urllib.parse import requests def shorten_url_llm(url): """ Create a predictable shortened URL using Base64 encoding Compatible with ZAGL LLM functionality """ # Validate URL if len(url) > 4096: raise ValueError("URL exceeds 4KB limit") # Encode to Base64 encoded_bytes = base64.b64encode(url.encode('utf-8')) encoded_str = encoded_bytes.decode('utf-8') # Remove padding for cleaner URLs clean_encoded = encoded_str.rstrip('=') # Generate short URL short_url = f"https://yourdomain.com/e/{clean_encoded}" return { "short_url": short_url, "encoded": clean_encoded, "original_url": url } def decode_llm_url(encoded_url): """ Decode a Base64 encoded URL """ # Add padding back if needed padding_needed = 4 - (len(encoded_url) % 4) if padding_needed != 4: encoded_url += '=' * padding_needed # Decode decoded_bytes = base64.b64decode(encoded_url) return decoded_bytes.decode('utf-8') # Example usage original_url = "https://example.com/very/long/url/path" result = shorten_url_llm(original_url) print(f"Short URL: {result['short_url']}") print(f"Encoded: {result['encoded']}")
JavaScript/Node.js
llm_shortener.js
// JavaScript/Node.js implementation function shortenUrlLLM(url) { // Validate URL if (url.length > 4096) { throw new Error("URL exceeds 4KB limit"); } // Validate URL format try { new URL(url); } catch { throw new Error("Invalid URL format"); } // Encode to Base64 const base64 = Buffer.from(url, 'utf-8').toString('base64'); // Remove padding for cleaner URLs const cleanBase64 = base64.replace(/=/g, ''); // Generate short URL const shortUrl = `https://yourdomain.com/e/${cleanBase64}`; return { shortUrl, encoded: cleanBase64, originalUrl: url }; } function decodeLLMUrl(encodedUrl) { // Add padding back if needed let paddedBase64 = encodedUrl; while (paddedBase64.length % 4) { paddedBase64 += '='; } // Decode from Base64 return Buffer.from(paddedBase64, 'base64').toString('utf-8'); } // Example usage const originalUrl = "https://example.com/very/long/url/path"; const result = shortenUrlLLM(originalUrl); console.log(`Short URL: ${result.shortUrl}`); console.log(`Encoded: ${result.encoded}`);
终端 / cURL
terminal
# Encode a URL curl -X POST https://za.gl/api/llm/encode \ -H "Content-Type: application/json" \ -d '{"url": "https://example.com/very/long/url/path"}' # Get analytics curl "https://za.gl/api/llm/analytics?days=7&format=json" # Get analytics as CSV curl "https://za.gl/api/llm/analytics?days=30&format=csv" \ -o analytics.csv
用例
LLM应用
- • ChatGPT插件和集成
- • Claude Code和AI开发工具
- • 自动内容生成
- • AI驱动的链接共享
自动化和脚本
- • CI/CD管道
- • Webhook集成
- • 批量URL处理
- • 文档生成器
兼容 za.gl/llm-docs 规范
最后更新: 12/3/2025