Tafsiri ya JSON

Tafsiri faili za eneo la JSON bila kugusa funguo zako.

Funguo hubaki funguo. Uingizaji hubaki kama ulivyo. Thamani za maandishi pekee ndizo zinazotafsiriwa — na ni thamani za maandishi pekee. Aina nyingine zote za mali hurudi kama zilivyotumwa.

Funguo
huhifadhiwa kila wakati
Vitu vilivyoingia ndani
vinashughulikiwa kwa urudia
30
lugha za matokeo kwa kila ombi
50,000
tokeni za bure / mwezi

Zana za kawaida za tafsiri hazielewi JSON.

API za tafsiri za kawaida huona JSON yako kama ukuta wa maandishi. Hutafsiri majina ya funguo pamoja na thamani. Huzibua vitu vilivyoingia ndani. Huchanganya mistari ambayo haipaswi kuchanganywa. Kinachorejea ni JSON iliyovunjika kiundani ambayo inahitaji marekebisho ya mkono kabla ya kutumika. Ikiwa unatunza faili za eneo kwa programu ya uzalishaji, unajua kuwa kuziingiza kwenye API ya kawaida ya tafsiri huleta kazi zaidi kuliko inavyookoa.

Tatizo ni kubwa zaidi kuliko majina ya funguo tu. API za kawaida za tafsiri pia huharibu vigezo vya uingizaji. Mstari kama "Hello {name}, you have {count} messages" hurudi na majina ya vigezo yamebadilishwa — "Hola {nombre}, tienes {cuenta} mensajes" — ambayo huvunja kila wakati wa utekelezaji uliotarajia jina la asili la kigezo. Saa za kutatua matatizo hufuata.

Kwa timu zinazotunza faili za eneo kwa lugha nyingi kwa programu ya uzalishaji, hili si tatizo la nadharia. Tayari limetokea. Swali ni ni muda gani mchakato wa marekebisho ya mkono unachukua kila wakati.

PolyLingo hupitia JSON yako kabla ya kutafsiri.

PolyLingo inaelewa muundo wa JSON. Inapitia kitu chako kwa urudia, hutambua thamani za maandishi zenye maandishi ya kutafsiri, na hutuma thamani hizo pekee kwa mfano wa tafsiri. Majina ya funguo hayabadilishiwi kamwe. Nambari, boolean, thamani za null, na aina zisizo za maandishi hupitishwa bila kubadilika. Matokeo ni JSON halali yenye muundo sawa — lakini na thamani za maandishi zilizotafsiriwa.

Vigezo vya uingizaji — {name}, {{count}}, %s, na mifumo kama hiyo — hutambuliwa na kuhifadhiwa wakati wote wa mchakato wa tafsiri. Hubadilishwa na viashiria kabla ya tafsiri, na kurejeshwa katika asili yao katika matokeo. Mfano wa tafsiri hauwahi kuiona kama maandishi ya kutafsiriwa.

Safu zinashughulikiwa kwa usahihi: kila kipengele cha maandishi hutafsiriwa, wakati viashiria vya nambari na muundo wa safu hubaki kama ulivyo. Safu mchanganyiko zenye maandishi na zisizo za maandishi (nambari, vitu) hupitiwa kwa usahihi na aina zisizo za maandishi hupitishwa bila kubadilika.

Ingizo — faili la eneo la JSON la kawaida (Kiingereza)
{
  "nav_home": "Home",
  "nav_pricing": "Pricing",
  "hero_title": "Grow your audience globally",
  "hero_cta": "Get started for free",
  "footer_rights": "All rights reserved."
}
Matokeo — Kifaransa (funguo sawa)
{
  "nav_home": "Accueil",
  "nav_pricing": "Tarifs",
  "hero_title": "Développez votre audience mondiale",
  "hero_cta": "Commencer gratuitement",
  "footer_rights": "Tous droits réservés."
}
Ingizo — faili la eneo la JSON lililoingia ndani (Kiingereza)
{
  "nav": {
    "home": "Home",
    "pricing": "Pricing",
    "blog": "Blog"
  },
  "hero": {
    "title": "Grow your audience globally",
    "subtitle": "Translate in seconds.",
    "cta": "Get started for free"
  },
  "errors": {
    "notFound": "Page not found",
    "serverError": "Something went wrong"
  }
}
Matokeo — Kihispania (muundo uko sawa)
{
  "nav": {
    "home": "Inicio",
    "pricing": "Precios",
    "blog": "Blog"
  },
  "hero": {
    "title": "Expande tu audiencia globalmente",
    "subtitle": "Traduce en segundos.",
    "cta": "Comienza gratis"
  },
  "errors": {
    "notFound": "Página no encontrada",
    "serverError": "Algo salió mal"
  }
}
Ombi la API — tafsiri kwa lugha 5 kwa simu moja
curl -X POST https://api.usepolylingo.com/v1/translate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "{\"nav_home\": \"Home\", \"hero_title\": \"Get started\"}",
    "format": "json",
    "targets": ["es", "fr", "de", "ja", "zh"],
    "model": "standard"
  }'

# Response:
# {
#   "translations": {
#     "es": "{\"nav_home\": \"Inicio\", \"hero_title\": \"Empezar\"}",
#     "fr": "{\"nav_home\": \"Accueil\", \"hero_title\": \"Commencer\"}",
#     ...
#   }
# }

Kile PolyLingo kinachodhamini kwa kila tafsiri ya JSON

  • Majina ya funguo hayabadilishiwi kamwe
  • Vitu vilivyoingia ndani na safu zinashughulikiwa kwa urudia
  • Nambari, boolean, thamani za null hupitishwa bila kubadilika
  • Lugha zote 43 kwa ombi moja
  • Inatambuliwa moja kwa moja kama JSON — hakuna bendera ya muundo inahitajika
  • Inafanya kazi na faili za eneo zenye muundo wa kawaida na uliyoingia ndani sana
  • Vigezo vya uingizaji ({name}, {{count}}, %s) huhifadhiwa kwa usahihi
  • Matokeo ni JSON halali — yanaweza kusomwa bila marekebisho

Hatua tatu za faili za eneo zilizotafsiriwa

1

Bandika JSON yako au piga simu API

Tumia mtafsiri wa bila msimbo kwa tafsiri za mara moja: bandika JSON yako, chagua lugha zako, pakua faili zilizotafsiriwa. Kwa otomatiki, piga POST /v1/translate na maudhui ya JSON na misimbo ya lugha lengwa.

2

Pokea lugha zote kwa jibu moja

API hurudisha kitu cha JSON chenye kipengele kimoja kwa kila lugha lengwa, kila kikiwa na faili kamili ya eneo iliyotafsiriwa na muundo sawa. Hakuna simu kwa kila lugha. Hakuna mizunguko. Ombi moja kwa matokeo yote.

3

Weka matokeo kwenye saraka yako ya ujumbe

Andika kila faili iliyotafsiriwa kwenye messages/es.json, messages/fr.json, messages/de.json — au mahali popote maktaba yako ya i18n inavyotarajia. Muundo ni sawa na faili lako la chanzo, hivyo hakuna usindikaji zaidi unaohitajika.

Wapi tafsiri ya JSON inakuwa muhimu zaidi

🌐

i18n ya programu na next-intl au i18next

Tafsiri moja kwa moja faili zako za messages/*.json au locales/*.json. Funguo hubaki kama zilivyo, uingizaji huhifadhiwa, na vigezo vya uingizaji hupita bila kubadilika. Weka faili kwenye saraka yako ya ujumbe na tuma.

🗄️

Usafirishaji wa maudhui ya CMS

Majukwaa ya CMS yasiyo na kichwa mara nyingi husafirisha maudhui yaliyopangwa kama JSON. PolyLingo hutafsiri thamani za maandishi huku ikihifadhi majina ya sehemu, aina za maudhui zilizoingia ndani, na thamani zisizo za maandishi kama tarehe, boolean, na vitambulisho.

⚙️

Majibu ya API na faili za usanidi

Muundo wowote wa JSON wenye thamani za maandishi zinazotafsiriwa — maelezo ya bidhaa, templeti za arifa, nakala za ndani ya programu zinazotolewa kupitia API — zinaweza kutafsiriwa bila kubadilisha muundo unaotegemea programu yako.

Maswali yanayoulizwa mara kwa mara kuhusu tafsiri ya JSON

Je, vigezo vya uingizaji kama {name} au {{count}} huhifadhiwa?

Ndiyo. PolyLingo hutambua mifumo ya kawaida ya uingizaji ikiwa ni pamoja na {variable}, {{variable}}, %(variable)s, na %s kabla ya tafsiri. Hizi hubadilishwa na viashiria thabiti, maandishi yanayozunguka hutafsiriwa, na majina ya asili ya vigezo hurudishwa kwenye matokeo. Mfano wa tafsiri hauwahi kuona majina ya vigezo kama maudhui ya kutafsiri.

Nini hutokea kwa thamani zisizo za maandishi — nambari, boolean, null?

Thamani zisizo za maandishi hupitishwa bila kubadilika kabisa. PolyLingo hutafsiri thamani za maandishi tu zenye maandishi ya lugha ya asili. Nambari, boolean, thamani za null, na safu za zisizo za maandishi huhifadhiwa kama zilivyo chanzo.

Je, PolyLingo inaweza kushughulikia miundo ya JSON iliyozama ndani sana?

Ndiyo. PolyLingo hupitia vitu vyenye uingizaji wowote kwa urudia. Tafsiri hutumika kwa thamani zote za maandishi katika muundo mzima, bila kujali uingizaji wao ni wa kina kiasi gani.

Je, vigezo vingine vinavyoweza kuwa na maudhui yasiyotafsiriwa kama slugs au nambari za msimbo vinashughulikiwa vipi?

PolyLingo hutafsiri thamani zote za maandishi kwa chaguo-msingi. Ikiwa una sehemu za maandishi ambazo hazipaswi kutafsiriwa — slugs, nambari za lugha, vitambulisho vya kiufundi — njia inayopendekezwa ni kuziondoa kutoka kwenye JSON unayotuma, au kutumia kipengele cha muundo maalum na kubainisha sehemu za kuepuka (inakuja hivi karibuni). Kwa faili nyingi za eneo, thamani zote za maandishi zinalengwa kutafsiriwa.

Je, inafanya kazi na JSON5 au JSONC (JSON yenye maoni)?

Kwa sasa PolyLingo inashughulikia JSON ya kawaida. JSON5 na JSONC (zenye maoni) zinapaswa kusafishwa kabla ya kutuma ili kuondoa maoni na kubadilisha kuwa JSON ya kawaida. Hii ni hatua ya kawaida katika mchakato wa kujenga na huongeza mzigo mdogo tu.

Naweza kulenga lugha ngapi kwa ombi moja?

Hadi lugha zote 30 zinazoungwa mkono kwa ombi moja. Jibu lina kitu kimoja cha JSON kilichotafsiriwa kwa kila msimbo wa lugha. Mipaka ya kiwango hutofautiana kulingana na mpango — kiwango cha bure huruhusu maombi 10 kwa dakika, wakati mipango ya Growth na Scale huruhusu maombi 200–600 kwa dakika.

Tafsiri faili zako za eneo kwa sekunde.

Bandika JSON yako, chagua lugha zako, upate faili halali za eneo kwa kila lugha lengwa.

Anza kutafsiri bure

Bandika JSON yako ya eneo na uone matokeo — bure, hakuna akaunti inahitajika.

Tafsiri faili za eneo la JSON bila kugusa funguo zako — PolyLingo | PolyLingo