Appel d'une Api Web 2 point de terminaison à partir d'une procédure stockée
certains anciens de la procédure stockée SQL (SQL Server 2008) a besoin d'obtenir des informations à partir d'un service web (Web Api 2) que j'ai fournie.
Comment appeler le point de terminaison (en GET), récupérer les données (au format JSON) et traduire les données reçues dans une table temporaire pour être utilisée dans le reste de la procédure stockée?
Grâce
Mon post de réponse à votre question? si oui, veuillez envisager d'accepter. Merci!
Voici un exemple d'utilisation de curl blogs.msdn.microsoft.com/sqlserverstorageengine/2018/04/17/...
Voici un exemple d'utilisation de curl blogs.msdn.microsoft.com/sqlserverstorageengine/2018/04/17/...
OriginalL'auteur ff8mania | 2016-03-22
Vous devez vous connecter pour publier un commentaire.
La meilleure façon serait de créer Utilisé définie par la fonction CLR et appelez votre API Web à partir de là, vous pouvez utiliser la pleine puissance de C# et de .Bibliothèques Net pour faire des appels web et parser Json. Il ya beaucoup d'informations sur internet à ce sujet. Par exemple: https://blogs.msdn.microsoft.com/spike/2010/11/25/how-to-consume-a-web-service-from-within-sql-server-using-sql-clr/. Ce n'est pas sur WebAPI en particulier, mais vous pouvez obtenir l'idée à partir de là.
Veuillez noter que cela nécessiterait le déploiement de votre assembly personnalisé avec Fonction CLR(s) pour le Serveur SQL.
Modifier:
Il y a un moyen de le faire en TSQL à l'aide de OLE Automation. Voir un exemple ici, mais il est beaucoup plus difficile, moins documenté et vous aurez probablement passer du temps à inventer de vous propre vélo au lieu d'utiliser des solutions prêtes à partir avec les fonctions CLR.
Il y a un moyen, j'ai mis à jour ma réponse.
Est-ce répondre à votre question? si oui, veuillez envisager d'accepter. Merci!
OriginalL'auteur Vadim K.
Vous pouvez le faire facilement sans avoir à écrire CLR :
C'est très bien pour l'appel d'un Service Web XML, mais je crois que la question initiale était de savoir comment appeler une API Web (en utilisant JSON, non XML).
N'est-ce encore du travail pour tout le monde? Quand je le lance, j'obtiens la réponse: <?xml version="1.0" encoding="utf-8"?> <string xmlns="exceptionwebserviceX.NET/">exception</string> >
Comment utiliser la méthode POST de cette façon?
OriginalL'auteur S.Mohamed Mahdi Ahmadian zadeh
Essayez d'utiliser cette procédure Stockée CLR: SQL-APIConsumer
OriginalL'auteur Geraldo Diaz