IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Accéder à une base Oracle depuis le FrontEnd


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut Accéder à une base Oracle depuis le FrontEnd
    Bonjour

    Je dois accéder à une base de donnée Oracle depuis le FrontEnd.
    J'aimerais savoir quelle est la meilleur techno pour cela. Un tutoriel est également bienvenu.

    La documentation Oracle me parait verbeuse, mais je n'ai pas trouvé un exemple simple.
    A minima, il semble qu'il faille permettre à la base d'autoriser une API Rest : https://developer.oracle.com/dsl/odb...s-js-rest.html

    Idéalement, j'aimerais quelques lignes de Javascript pour lire / écrire des données directement depuis une page HTML.

    Belle journée.

    Cordialement

  2. #2
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut
    Et côté serveur tu utilises quelle technologie pour faire tes requêtes ?

    D'une manière générale on utilise AJAX pour faire des requêtes vers le serveur sans recharger la page. Ensuite si ton serveur est par exemple php, tu fais ta requête Oracle avec oci_connect et tu fais afficher en retour soit du texte basique, soit du html, soit un tableau avec json_encode, que tu pourras exploiter en javascript en retour de requête (par exemple avec innerHtml() si tu as choisi de retourner du html). Le principe est expliqué dans le précédent lien.

  3. #3
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    Côté serveur, je suis en Python / Fastapi.
    Et c'est du bonheur.


    Au sujet d'Ajax: https://developer.mozilla.org/fr/doc...etting_Started

    est-ce qu'il est normal d'avoir

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (window.ActiveXObject) { // IE 6 et antérieurs
        httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
    Est-ce que ce code fonctionne bien avec tout les navigateurs et n'est pas du code propriétaire ?

  4. #4
    Membre éprouvé Avatar de tag9724
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2021
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2021
    Messages : 64
    Par défaut
    Tu peux oublier ActiveX c'était la façon de faire des requêtes Ajax sous les vielles versions d'internet Explorer, c'est d'ailleurs pour ça que pas mal de site de l'époque ne fonctionnaient que sous IE. ActiveX est bien propriétaire de Microsoft d'ailleurs.

    En règle général je te dirais même d'oublier le support d'internet explorer tout cours, IE 11 commence a dater et Microsoft eux même abandonnent progressivement leur vieux navigateur au profit de Edge.

    Tu devra donc utiliser XMLHttpRequest ou encore Fetch qui est plus récent mais malgré tout largement supporté par tout les navigateurs aujourd'hui.

  5. #5
    Membre éclairé Avatar de Bayard
    Inscrit en
    Juin 2002
    Messages
    863
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 863
    Par défaut
    De ce que je sais Json est plus récent que XML.

    De ce que je comprends Fetch utilise Json

    https://developer.mozilla.org/en-US/...PI/Using_Fetch

    et mon ami FastApi parle Json couramment

    https://fastapi.tiangolo.com/tutorial/encoder/

  6. #6
    Membre éprouvé Avatar de tag9724
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2021
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2021
    Messages : 64
    Par défaut
    Fetch n'utilise pas nécessairement du JSON, fetch est une alternative à XMLHTTPRequest avec quelques fonctionnalités en plus.

    La plus grosse différence avec XMLHTTPRequest est la syntaxe à base de Promesses que Fetch utilise et qui permet de structurer le code autrement.
    Une requêtes faite avec fetch pourrais ressembler à ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    const recupérerContenuJson = async () => {
      const response = await fetch("contenu.json")
     
      // La requête a finie d'être envoyée et renvoie un status 200
      if (response.ok) {
        return response.json()
      }
    }
     
    // Une fois appelé ailleurs
    const data = await recupérerContenuJson()
    uneAutreFonction(data)
    Son équivalent avec XMLHTTPRequest ressemblerais lui à :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    function recupérerContenuJson(callback = () => {}) {
      const requete = new XMLHttpRequest()
     
      requete.onload = () => {
        const data = JSON.parse(requete.responseText)
        callback(data)
      }
     
      requete.open("GET", "contenu.json")
      requete.send()
    }
     
    // Une fois appelé ailleurs
    recupérerContenuJson((data) => {
      uneAutreFonction(data)
    })
    C'est surtout une question de préférence dans ton cas, les deux méthodes fonctionnent très bien pour faire des requêtes Ajax.

    De ce que je sais Json est plus récent que XML.
    Oui mais c'est surtout que JSON est bien plus adapté pour stocker des données et les traiter.
    Un JSON est grossièrement un objet Javascript ( d'où son nom : Javascript Object Notation ), mais qui ne stockera que des données ( donc pas de fonctions JS par exemple ).

    C'est ce qui s'est imposé comme standard, c'est une bonne pratique de renvoyer les données en JSON quand tu créer une API REST.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Accés à une base Oracle depuis Postgrs
    Par Guillaume93 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 15/10/2007, 14h44
  2. accéder à une base oracle via Access
    Par Smix007 dans le forum Access
    Réponses: 16
    Dernier message: 11/05/2007, 11h16
  3. Accéder à une base InterBase depuis un pda
    Par Hisui dans le forum Firebird
    Réponses: 4
    Dernier message: 08/03/2007, 14h27
  4. Accèder à une base oracle 9 avec un client 8
    Par griese dans le forum Connexions aux bases de données
    Réponses: 12
    Dernier message: 22/11/2006, 14h14
  5. [VBA]Connecter une base oracle depuis Excel
    Par roadster62 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/01/2006, 14h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo