1.Faites un récipient avec KINTONE 2. Envoyer des pièces jointes en Python --Obtenir fileKey --Fusion pour enregistrer 3. je suis content
Créez un conteneur pour les pièces jointes avec un code de champ "Attch".
Pour joindre un fichier à un enregistrement avec KINTONE
--Téléverser un fichier
Suivez la procédure.
Si vous l'écrivez en Python ↓
#!/usr/bin/python
# coding:utf-8
import requests
import json
URL = "https://xxxxx.cybozu.com:443" #sous-domaine kintone(xxx.cybozu.com)
APP_ID = "ID" #identifiant d'application kintone
API_TOKEN = "APP TOKEN" #jeton d'API kintone
KNT_PASS = "xxxxxx" #Identifiant:Encoder le mot de passe avec base64
#Code de champ de l'application KINTONE
#Attacher
class KINTONE:
    def UploadToKintone(self, url, knt_pass,path,filename):
        img = open(path + filename, 'rb')
        files={'file':(filename,img,'image/jpeg')}
        headers = {"X-Cybozu-Authorization": knt_pass , 'X-Requested-With': 'XMLHttpRequest'} 
        resp=requests.post(url+"/k/v1/file.json",files=files,headers=headers)
        return resp 
    
    def PostToKintone(self,url,appId,apiToken,filekey):
        record = {
            "Attch":{'type':"FILE","value" :[{'fileKey':filekey}]}
            #Si vous souhaitez insérer des données dans d'autres champs','Séparé par
        }
        data = {'app':appId,'record':record}
        headers = {"X-Cybozu-API-Token": apiToken, "Content-Type" : "application/json"}
        resp=requests.post(url+'/k/v1/record.json',json=data,headers=headers)
        
        return resp
if __name__ == '__main__':
    Path='/tmp/' #Chemin d'enregistrement du fichier
    FileName='image.jpg' #nom de fichier
    
    knt=KINTONE()
    resp=knt.UploadToKintone(URL, KNT_PASS,Path,FileName)
    txt=json.loads(resp.text)
    FileKey=txt['fileKey']
    resp=knt.PostToKintone(URL, APP_ID, API_TOKEN,FileKey)
    print resp.text
La sortie est
{"id":"1","revision":"1"}
Je me sentais heureux à côté de moi.
Recommended Posts