是用ai编写的,存在以下问题:翻译时原文语言为自动时无法正确翻译,选择语言后才能翻译,由于本人能力不足,各位看着用吧
😔
https://api.mymemory.translated.net/
async (args) => {
const langMap = { auto: "en", nb: "no" };
const lang = (code) => langMap[code] ?? code;
// ---------- 核心改动 ----------
// 1. 从多个常见字段中尝试获取目标语言
const target = args.toLang || args.to || args.target ||
args.targetLang || args.toLanguage || args.target_language;
// 2. 如果依然为空,则返回 null 让翻译失败(而不是错误地兜底为 en)
if (!target) {
console.warn('[MyMemory] 未找到目标语言字段,请检查 args 对象。');
return null;
}
// 源语言同样扩展备选
const source = args.fromLang || args.from || args.source || "auto";
// -----------------------------
const query = [
q=${encodeURIComponent(args.texts[0])},
langpair=${encodeURIComponent(lang(source))}|${encodeURIComponent(lang(target))},
].join("&");
return {
url: ${args.url}?${query},
method: "GET",
headers: {},
};
}
async ({ res }) => {
const sourceLang = (res?.lang || "").split("|")[0];
const translatedText = res?.responseData?.translatedText || "";
return {
translations: [[translatedText, sourceLang]],
};
}
是用ai编写的,存在以下问题:翻译时原文语言为自动时无法正确翻译,选择语言后才能翻译,由于本人能力不足,各位看着用吧
😔
url
https://api.mymemory.translated.net/
Request Hook
async (args) => {
const langMap = { auto: "en", nb: "no" };
const lang = (code) => langMap[code] ?? code;
// ---------- 核心改动 ----------
// 1. 从多个常见字段中尝试获取目标语言
const target = args.toLang || args.to || args.target ||
args.targetLang || args.toLanguage || args.target_language;
// 2. 如果依然为空,则返回 null 让翻译失败(而不是错误地兜底为 en)
if (!target) {
console.warn('[MyMemory] 未找到目标语言字段,请检查 args 对象。');
return null;
}
// 源语言同样扩展备选
const source = args.fromLang || args.from || args.source || "auto";
// -----------------------------
const query = [
q=${encodeURIComponent(args.texts[0])},langpair=${encodeURIComponent(lang(source))}|${encodeURIComponent(lang(target))},].join("&");
return {
url:
${args.url}?${query},method: "GET",
headers: {},
};
}
Response Hook
async ({ res }) => {
const sourceLang = (res?.lang || "").split("|")[0];
const translatedText = res?.responseData?.translatedText || "";
return {
translations: [[translatedText, sourceLang]],
};
}