Skip to content
  • Categories
  • Recent
  • Popular
Collapse
Brand Logo
  1. Home
  2. Categories
  3. Sujets Techniques
  4. Créer dossier API Rest

Créer dossier API Rest

Scheduled Pinned Locked Moved Sujets Techniques
api
5 Posts 2 Posters 195 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Offline
    C Offline
    ccomte
    wrote on last edited by cpotter
    #1

    Bonjour,

    Dans le cadre d'une application de gestion de convention j'envoie vers GoFast grâce à l'API Rest les fichiers de convention.

    Mais j'aimerais que ces fichiers soit rangés dans des dossiers correspondant à l'année de la convention. Afin de ne pas créer plusieurs dossiers à l'avance et de pouvoir le faire automatiquement est-il possible de créer des dossiers via l'API Rest ?

    Cordialement,

    Comte Clément

    1 Reply Last reply
    0
    • E Offline
      E Offline
      ebouchet
      Utilisateur GoFAST Entreprise
      wrote on last edited by
      #2

      Des Dossiers ou des Espaces ?

      Si je suppose que vous utilisez Python :

      Pour les dossiers , un acces webdav avec le package Webdav3 peut fonctionner du style :

      from webdav3.client import Client
      WDoptions = {
      'webdav_hostname': "https://" + GFServer,
      'webdav_login': UsrLogin,
      'webdav_password': UsrPass,
      'verbose': True
      }
      WDclient = Client(WDoptions)
      WDclient.verify = False

      WDclient.mkdir('/alfresco/webdav/Sites/_Groups/Scans/Cpta/' + trigMag + '/' + trigMag + '_Cpta_FraisG/10-A_Traiter_Cpta')

      Pour les espaces l'api est utilisable en s'inspirant de l'exemple ci dessous
      def create_subspace(server, authent, mere, fille):
      headers = {'Content-Type': "application/json", 'Authorization': "Basic " + authent}
      url = "https://" + server + "/api/space/space"
      data = {'gid': mere, 'title': fille}
      print("create_subspace\t\t", server, " ", fille)
      if bShowOnly == True:
      # print (headers)
      return (1)
      else:
      # print ("create_subspace\t\tlancement requests.put",server,authent, mere,fille)
      content = json.loads(requests.put(url, data=json.dumps(data), headers=headers, verify=False).text)
      print("Message")
      print(content)
      return content['gid']
      return (0)

      1 Reply Last reply
      1
      • C Offline
        C Offline
        ccomte
        wrote on last edited by
        #3

        C'est bien des Dossiers et non des Espaces dont j'ai besoin.

        La première solution est donc ce que je recherchais 🙂 elle fonctionne très bien.

        Je n'ai plus qu'à la traduire en Java

        Merci beaucoup.

        1 Reply Last reply
        1
        • E Offline
          E Offline
          ebouchet
          Utilisateur GoFAST Entreprise
          wrote on last edited by
          #4

          Votre code de publication de documents via l'api m'intéresse.... si vous pouvez le poster....

          1 Reply Last reply
          1
          • C Offline
            C Offline
            ccomte
            wrote on last edited by
            #5

            Pour envoyer un fichier j'utilise Java et ce n'est pas moi qui est fait ce code, mais il reprend le code fourni sur cette page : https://blog.cpming.top/p/httpurlconnection-multipart-form-data

            Utilisé comme suit :

            try {
                	    // Set header
                	    Map<String, String> headers = new HashMap<>();
                	    String basicAuth = Base64.getEncoder().encodeToString((goFastLogin+":"+goFastPassword).getBytes());
                	    headers.put("Authorization", "Basic "+basicAuth);
            	    logger.info("Conexion à go fast");
                	    HttpPostMultipart multipart = new HttpPostMultipart("https://gofasturl/api/node/node", "utf-8", headers);
                	    // Add form field
                	    multipart.addFormField("type", "alfresco_item");
                	    multipart.addFormField("title", nomFichier);
                	    multipart.addFormField("locations", "[\"" + Path + "\"]"); 
                	    // Add file
                	    multipart.addFilePart("file", fichier, nomFichier);
                	    // Print result
            	    logger.info("Envoie du fichier");
                	    String response = multipart.finish();
                	    return response;
            } catch (IOException e) {
            	   e.printStackTrace();
            }
            
            1 Reply Last reply
            1
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            • Login

            • Don't have an account? Register

            • Search
            • First post
              Last post
            0
            • Categories
            • Recent
            • Popular
            • Search