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

Développement SQL Server Discussion :

Récupération données méthode POST- JSON


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2019
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2019
    Messages : 32
    Par défaut Récupération données méthode POST- JSON
    Bonjour,

    Je rencontre une problématique sur la récupération de données à travers la méthode POST.

    En effet j'arrive bien à récupérer les données mais je n'ai que les données de la première page qui s'affiche or j'aimerai avoir les données de toutes les pages...

    Voici mon code :

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    DECLARE @URL NVARCHAR(MAX) = 'https://*****.*****.fr/api/partenaire/****/ordre-mission/accepte?page=1';
    Declare @Object as Int;
    Declare @ResponseText as Varchar(8000);
    DECLARE @KeyAuthorization AS VARCHAR(8000) 
    DECLARE @Status as int
    Declare @StatusText as varchar(34)
    DECLARE @JsonData1 NVARCHAR(MAX)
     
    set @KeyAuthorization = 'Bearer '+@OKSToken
     
     
     
    Exec sp_OACreate 'MSXML2.XMLHTTP', @Object OUT;
    Exec sp_OAMethod @Object, 'open', NULL, 'get', @URL,'False'
    EXEC sp_OAMethod @Object, 'SetRequestHeader', NULL, 'Accept', 'application/json'
    EXEC sp_OAMethod @Object, 'SetRequestHeader', NULL, 'Content-Type', 'application/json;charset=utf-8'
    EXEC sp_OAMethod @Object, 'SetRequestHeader', NULL, 'Authorization', @KeyAuthorization
    Exec sp_OAMethod @Object, 'send',NULL
     
    EXEC sp_OAGetProperty @Object, 'status', @status OUT;
    EXEC sp_OAGetProperty @Object, 'statusText', @statusText OUT;
    EXEC sp_OAGetProperty @Object, 'responseText', @responseText OUT;
     
    if @TestSP = 1 select @status, @statusText, @responseText
     
    IF((Select @ResponseText) <> '')
    	BEGIN
    		 DECLARE @json NVARCHAR(MAX) = (Select @ResponseText)
    		 SELECT TOP 10*
    		 FROM OPENJSON(@json, '$.data') 
     
    			   WITH(
    					 Id_Commande nvarchar(200) '$."id_commande"',
    					 Date_Commande datetime '$."date_commande"',
    					 Date_RDV datetime '$."date_rdv"',
    					 Type_commande int '$."type"',
    					 Num_commande nvarchar(200) '$."numero_commande"',
    					 Num_devis nvarchar(200) '$."numero_devis"',
    					 etat_commande NVARCHAR(255) '$."etat_commande"'
    				   );
    	END
    ELSE
    	BEGIN
    		 DECLARE @ErroMsg NVARCHAR(30) = 'No data found.';
    		 Print @ErroMsg;
    	END
    j'ai plus de 95 données mais il ne m'en affiche que 10 par pages et je ne vois pas comment je peux les récupérer pour toutes les pages..

    Merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT TOP 10 *
    FROM OPENJSON(@json, '$.data')

  3. #3
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2019
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2019
    Messages : 32
    Par défaut
    Bonjour,

    merci pour votre retour mais ce n'était pas ça .. j'ai toujours un retour de 10 données max ..

  4. #4
    Membre Expert
    Avatar de mail.spam
    Homme Profil pro
    Développeur Windev et technicien maintenance
    Inscrit en
    Janvier 2008
    Messages
    1 915
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Windev et technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 915
    Par défaut
    Bonjour,
    Il y a un select top 10
    Donc on retourne que le top 10

  5. #5
    Invité
    Invité(e)
    Par défaut
    Votre code est visiblement partiel...
    Pourrait-on avoir le code en entier avec le json source ?

  6. #6
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    C'est peut-être aussi le producteur de l'API qui limite les retours à 10 lignes mais normalement vous recevez un code statut 206 (retour partiel).

    D'ailleurs dans l'URL d'appel je vois que vous avez un ?page=1.

    Mon petit doigt m'indique que tant que vous recevez du 206 vous devez incrémenter ce numéro de page.

  7. #7
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2019
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2019
    Messages : 32
    Par défaut
    Bonjour,

    Merci pour vos réponses c'est bien le producteur de l'API qui limite à 10 enregistrements par page..

    Dans ce cas la comment puis je faire pour incrémenter le numéro de page afin d'avoir tous les enregistrements ?

    Merci

Discussions similaires

  1. Récupération des données envoyées par la méthode POST
    Par karamaster dans le forum Langage
    Réponses: 2
    Dernier message: 12/01/2015, 08h33
  2. Réponses: 6
    Dernier message: 06/09/2009, 15h18
  3. Passage de données méthode POST
    Par descurai dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 18/05/2009, 17h30
  4. Probleme de récupération méthode $POST
    Par cyberdevelopment dans le forum Langage
    Réponses: 8
    Dernier message: 18/07/2006, 17h08
  5. [AJAX]problème d'envoie de données méthode POST
    Par xave dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 07/07/2006, 17h35

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