Mga card
Isinalin mula sa Ingles ang pahinang ito. Kung magkaiba ang dalawa, ang pahinang Ingles ang tama. Basahin ang pahinang Ingles
Ang card ay isang maikling listahan ng mga elemento na iginuguhit ng Lingara sa sarili nitong istilo. Walang input, larawan, script o markup. Hindi mailalagay ng isang app ang sarili nitong code o sariling itsura sa screen ng mag-aaral, kaya bawat card ay kahawig ng ibang bahagi ng Lingara. JSON ang sagot mo: isang card na naglalaman ng elements nito, at opsyonal na isang tutor_note (tingnan ang Ang tala sa tutor).
Ang mga elemento
May type ang bawat elemento, na isa sa walong ito:
| Elemento | Mga field | Ang ipinapakita nito |
|---|---|---|
heading | text, level | Isang heading. Ang level ay 1 o 2, at nagiging 2 ang anumang ibang value. Hanggang 80 character ang text nito. |
text | text, lang | Isang talata na hanggang 600 character. Ito lang ang lugar kung saan pinapanatili ang line break. |
term | word, reading, gloss, lang | Isang salitang pag-aaralan. word lang ang kailangan. Hanggang 60 character ang salita, 120 ang reading at 160 ang gloss. |
list | items | Hanggang 20 item. Ang bawat item ay text o term, na may parehong mga field gaya ng elementong may ganoong pangalan. |
progress | value, label | Isang progress bar. Mula 0 hanggang 1 ang value, at hanggang 60 character ang label. |
divider | Isang linya sa pagitan ng mga bahagi ng card. | |
button | label, action, style | Isang button na nagpapadala ng action nito sa server mo. Ang style ay primary o secondary, at hanggang 32 character ang label. |
link | label, url | Isang link na binubuksan ng mag-aaral sa browser niya, matapos siyang tanungin ng Lingara. Hanggang 60 character ang label. |
Ang lang ay isang language tag gaya ng ja, para maiguhit ng Lingara ang tamang script. Inaalis ang value na hindi language tag.
Ang mga limitasyon
- Hanggang 24 na elemento ang laman ng isang card. Tinatanggal ang mga elemento pagkatapos ng ika-24.
- Hanggang 20 item ang laman ng isang listahan. Tinatanggal ang mga item pagkatapos ng ika-20, at tinatanggal ang listahang walang laman.
- Hanggang 4 na button ang laman ng isang card. Tinatanggal ang mga button pagkatapos ng ika-4.
- Ang text na mas mahaba sa limitasyon nito ay pinuputol para magkasya at nagtatapos sa
…. Binibilang ang mga character bilang mga Unicode scalar value. - Inaalis ang mga control character at direction override sa bawat string.
- Tinatanggal ang link na ang address ay hindi HTTPS, may kasamang user name, o tumuturo sa isang IP address.
- Tinatanggal ang button na ang
actionay mas mahaba sa 64 character, o gumagamit ng anumang bukod sa mga titik, digit,_,.,:at-. - Tinatanggal ang elementong walang natirang text pagkatapos ng mga patakarang ito.
Maluwag ang mga patakarang ito: pinuputol o tinatanggal ng Lingara ang hindi kasya at iginuguhit ang natitira. Inilalapat ng mga kit ang parehong mga patakaran bago ka sumagot, kaya makikita mo kung ano ang magbabago.
Mahigpit na pag-parse
Sarado ang bokabularyo. Ang hindi kilalang uri ng elemento, field na wala sa isang elemento, value na mali ang JSON type, o sagot na hindi talaga JSON ay ginagawang fallback ang buong sagot. Hindi kailanman iginuguhit ng Lingara ang bahagi ng card na hindi nito nabasa.
Laki at oras
Hanggang 32 KiB ang sagot. Binibigyan ng Lingara ang server mo ng 3 segundo para sumagot sa isang render at 5 segundo para sumagot sa isang action, at hindi nito inuulit ang alinman. Dapat may status 200 at JSON content type ang sagot. Hindi sinusundan ang mga redirect.
Mga button at action
Kapag pinindot ng mag-aaral ang isang button, nagpapadala ang Lingara sa server mo ng action request na may dalang action ng button na iyon. Sumasagot ang server mo ng bagong card, na pumapalit sa luma. Puwedeng dumating nang dalawang beses ang iisang pindot, kaya gawing ligtas ulitin ang bawat action.
Kapag nabigo ang isang card
Kapag hindi makakuha ang Lingara ng card na kaya nitong iguhit, nakikita ng mag-aaral ang sariling card ng Lingara na “Hindi sumagot ang app na ito” sa wika niya, o ang huli mong maayos na card na may markang hindi napapanahon. Hindi kailanman sinasabi sa mag-aaral kung bakit. Ikaw lang, bilang may-ari ng app, ang nakakakita ng dahilan:
- Ang sagot mo:
invalid(hindi card na mababasa ng Lingara),empty(walang natirang ipapakita pagkatapos ng mga limitasyon) otoo_large(higit sa 32 KiB). - Pag-abot sa server mo:
timeout,http_error(anumang status maliban sa 200),transport(pagkabigo ng koneksyon o TLS, gaya ng expired na certificate) oblocked(isangrender_urlna humahantong sa pribado o IP-literal na address). - Panig ng Lingara:
unavailable(hindi napirmahan ng Lingara ang kahilingan) obusy(masyado nang maraming kahilingan ang tumatakbo).