De quoi ai-je besoin d'appeler un service web via le protocole https en C#?
Dois-je obtenir le formulaire de certificat le site? Comment puis-je l'utiliser pour appeler le service web?
Il n'y a rien de spécial ou de différent pour appeler un service web sur https que sur http. Vous générer un proxy client à partir du WSDL en utilisant soit svcutil.exe (ou Ajouter une Référence de Service dans VS) ou wsdl.exe et appeler la méthode. Le niveau inférieur des classes HttpWebRequest et HttpWebResponse finira par prendre soin de l'appel et des certificats, mais elle doit être transparente pour votre code. Bien sûr, le serveur hébergeant le service web doit fournir un certificat valide.
Salut Darin. Pouvez-vous veuillez donner des précisions? J'ai un problème similaire, je vais appeler un webmethod dans le package SSIS. Auparavant, la webmethod fonctionnait bien avec HTTP, mais maintenant, en utilisant le protocole HTTPS. Maintenant, je suis incapable d'appeler le webmethod. Pouvez-vous svp me guider? Je suis à l'aide de c# pour le développement. Merci beaucoup.
Je retire ce que vous utilisez Visual Studio pour créer vos projets, si vous êtes, il est assez facile à faire. Je retire ce que vous avez l'url du service web que vous souhaitez connecter et il commence par HTTPS.
Dans votre projet dans l'explorateur de solution (en supposant que vous utilisez Visual Studio), vous devriez voir un nœud en disant "Références" et un autre disant "Références Web". Clic droit sur le "Web de Référence" et puis, fondamentalement, suivez l'assistant. C'est assez simple. Vous pouvez spec votre propre espace de Noms. J'ai l'habitude d'utiliser le format SomethingAPI. Ensuite, l'utilisation de l'API que vous le souhaitez tout autre objet dans votre projet. Vous obtiendrez l'intellisense et tous.
Avez-vous un certificat du client qui a été fourni par le fournisseur du service web?
Si oui, il y a diverses façons différentes de le faire en fonction de la version de .NET vous utilisez. Quelle version utilisez-vous, et êtes-vous limité dans la façon dont vous pouvez générer votre client classes proxy?
Il n'y a rien de spécial ou de différent pour appeler un service web sur
https
que surhttp
. Vous générer un proxy client à partir du WSDL en utilisant soit svcutil.exe (ou Ajouter une Référence de Service dans VS) ou wsdl.exe et appeler la méthode. Le niveau inférieur des classes HttpWebRequest et HttpWebResponse finira par prendre soin de l'appel et des certificats, mais elle doit être transparente pour votre code. Bien sûr, le serveur hébergeant le service web doit fournir un certificat valide.OriginalL'auteur Darin Dimitrov
Je retire ce que vous utilisez Visual Studio pour créer vos projets, si vous êtes, il est assez facile à faire. Je retire ce que vous avez l'url du service web que vous souhaitez connecter et il commence par HTTPS.
Dans votre projet dans l'explorateur de solution (en supposant que vous utilisez Visual Studio), vous devriez voir un nœud en disant "Références" et un autre disant "Références Web". Clic droit sur le "Web de Référence" et puis, fondamentalement, suivez l'assistant. C'est assez simple. Vous pouvez spec votre propre espace de Noms. J'ai l'habitude d'utiliser le format SomethingAPI. Ensuite, l'utilisation de l'API que vous le souhaitez tout autre objet dans votre projet. Vous obtiendrez l'intellisense et tous.
OriginalL'auteur BrettS
Il peut se produire des problèmes connus avec certains certificats. Voir http://support.microsoft.com/kb/823177/en-us
OriginalL'auteur Shackles
Avez-vous un certificat du client qui a été fourni par le fournisseur du service web?
Si oui, il y a diverses façons différentes de le faire en fonction de la version de .NET vous utilisez. Quelle version utilisez-vous, et êtes-vous limité dans la façon dont vous pouvez générer votre client classes proxy?
OriginalL'auteur Lee Meyers