/
vshmidt
/
llama.cpp
Обзор
Документация
Войти
/
vshmidt
/
llama.cpp
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
tools/server/webui/src/lib/utils/headers.ts
44 строки
1 KB
Aleksander Grygier
webui: Agentic Loop + MCP Client with support for Tools, Resources and Prompts (#18655)
06 мар 2026, 12:00
Не верифицирован
06 мар 2026, 12:00
f6235a4
Код
Авторство
О чём код?
/** * Header utilities for parsing and serializing HTTP headers. * Generic utilities not specific to MCP. */ /** * Parses a JSON string of headers into an array of key-value pairs. * Returns empty array if the JSON is invalid or empty. */ export function parseHeadersToArray(headersJson: string): { key: string; value: string }[] { if (!headersJson?.trim()) return []; try { const parsed = JSON.parse(headersJson); if (typeof parsed === 'object' && parsed !== null && !Array.isArray(parsed)) { return Object.entries(parsed).map(([key, value]) => ({ key, value: String(value) })); } } catch { return []; } return []; } /** * Serializes an array of header key-value pairs to a JSON string. * Filters out pairs with empty keys and returns empty string if no valid pairs. */ export function serializeHeaders(pairs: { key: string; value: string }[]): string { const validPairs = pairs.filter((p) => p.key.trim()); if (validPairs.length === 0) return ''; const obj: Record<string, string> = {}; for (const pair of validPairs) { obj[pair.key.trim()] = pair.value; } return JSON.stringify(obj); }