• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    NYXnyx :: API
    NYX
    NYX --- ---
    ESTEN: Probiram se tim postupne. Tak snad se k tomu dostanu :-)
    ESTEN
    ESTEN --- ---
    NYX: koukam, ze ses zase pustil do prace, tak se nenapadne pripominam s timhle: [ESTEN @ nyx :: API]
    GIOMIKY
    GIOMIKY --- ---
    B3DA: Dekuji prevelice. Uz jsem na tom propalil mnoho casu. Ale tohle me nenapadlo. Tusil jsem, ze to bude nejaka drobnost. Jeste jednou moc diky.
    B3DA
    B3DA --- ---
    GIOMIKY: `file_type` je neco trochu jineho nez cekas .. ocekava hodnoty jako `'discussion_attachment' | 'free_file' | 'mail_attachment'` atp.

    mrkni na https://app.swaggerhub.com/apis/nyx.cz/nyx.cz/0.0.1#/default/put_api_file_upload a klikni na _Try it out_, aby se enablovaly ty selecty a videl jsi mozny parametry
    GIOMIKY
    GIOMIKY --- ---
    Tak opravdu nevim. Skoro bych rekl, ze to nebude chyba na moji strane... i kdyz pouzivam knihovny z vyssi urovne abstrakce, tak stale stejna chyba
    import requests
    from requests_toolbelt.multipart.encoder import MultipartEncoder
    
    mp_encoder = MultipartEncoder(
        fields={
            'file': ('a.txt', open('a.txt', 'rb'), 'text/plain'),
            'file_type'      : 'text/plain',
            'id_specific'    : '23330'
        }
    )
    
    p_headers = {
      'Authorization': 'Bearer <valid token>',
      'Content-Type': mp_encoder.content_type
    }
    
    r= requests.put (
        'https://nyx.cz/api/file/upload',
        headers=p_headers,
        data=mp_encoder
    )
    
    print(r.text)
    
    # {"error":true,"message":"422"}
    
    GIOMIKY
    GIOMIKY --- ---
    Ahoj, mam dotaz. Upravuju Conyx
    [CONYX | SONYX | SPTFJ | NBTERM]
    na nove api. A ted jsem se dostal k souborum. Minule to byl ocistec. Ted je to ocitec.
    Mam nasledujici form data:
    --DiZiZbndrY^M
    Content-Disposition: form-data; name="file";^M
    Content-Type: text/plain^M
    ^M
    123
    --DiZiZbndrY^M
    Content-Disposition: form-data; name="file_type"^M
    ^M
    text/plain^M
    --DiZiZbndrY^M
    Content-Disposition: form-data; name="id_specific"^M
    ^M
    23330^M
    --DiZiZbndrY--
    

    a ty posilam takto
    body=get_mpart() # viz vyse
    url="https://nyx.cz/api/file/upload"
    #dat=urllib.parse.urlencode(body.('utf8'))
    req = urllib.request.Request(url,data=body,method='PUT')
    req.add_header('content-type' , 'multipart/form-data; boundary="' + boundary + '"')
    req.add_header('content-length' , str(len(body)))
    req.add_header('Authorization', 'Bearer ' + get_auth_token())
    resp = request.urlopen(req).read()
    Neustale mi Nyx vraci 422 unprocessable entry

    Nevidite nekde, co by mohlo byt spatne?

    Moc dekuji
    LUCIEN
    LUCIEN --- ---
    NYX: Ano, práce mám hodně, jen mě zajímalo zda není náhodou nějaký progres u [ESTEN @ nyx :: API], [LUCIEN @ nyx :: API] nebo [LUCIEN @ nyx :: API], ...
    NYX
    NYX --- ---
    LUCIEN: Ale v api je asi hromada veci, ktere fyx zatim neimplementuje, ne?
    NYX
    NYX --- ---
    LUCIEN: Ted ne, zas mam trochu frmol v praci :-/ A kdyz uz neco, budu delat upgrade frameworku.
    LUCIEN
    LUCIEN --- ---
    Ciste teoreticky nějaké novinky v API nejsou? Chystám se zase něco udělat jak se mi rozvázaly ruce, tak jen abych měl kdyžtak přehled. Dík.
    NYX
    NYX --- ---
    Jen na zadost doplneno

    #[get("/api/discussion/{discussion_id}/stats")]
    #[get("/api/discussion/{discussion_id}/related")]
    VIRTUALVOID
    VIRTUALVOID --- ---
    NYX: áno presne ako píšeš, má to byť na tlačítko "logout" :)
    NYX
    NYX --- ---
    VIRTUALVOID: Aha, tak ja to vnimal prave naprosto opacne...ze zamerem je pri zavreni appky zacit okamzite posilat notifikace. Videt, ze nekdo nedavno byl k dispozici mi prijde zadouci...kdyz bude takhle clovek "problikavat" mezi aktivnim a neaktivnim, prijde mi to matouci.

    Ale jestli to ma byt navazane na nejake manualni "logout" tlacitko, tak by to smysl asi davalo.
    VIRTUALVOID
    VIRTUALVOID --- ---
    a zobudil ho ďalší request na API
    VIRTUALVOID
    VIRTUALVOID --- ---
    NYX: ide skôr o to, že človek sa nechce tváriť online. a make_inactive robilo to, že ho akoby odhlásilo (ale tokeny ostali platné).
    NYX
    NYX --- ---
    // a jinak web muze dat vedet pri volani API, ze "ja jsem web, ne aplikace" a pak se to chova jako kdyby to byl normalni webovy request.
    NYX
    NYX --- ---
    VIRTUALVOID: Ted jsem to zkoumal zrovna vcera, naimplementoval a pak jsem zjistil, ze to neni potreba. Pokud je posledni request pres API, chodi notifikace okamzite i kdyz clovek vypada aktivne. Prijde mi to lepsi nez toho cloveka na Nyxu proste zmizet.
    VIRTUALVOID
    VIRTUALVOID --- ---
    hele a to make_inactive prosím ?
    LUCIEN
    LUCIEN --- ---
    NYX: Taky se za tohle primlouvam :)
    LUCIEN
    LUCIEN --- ---
    NYX: Lepší než to je teď.
    Kliknutím sem můžete změnit nastavení reklam