Maison > Article > développement back-end > PHP implémente un service Web (testé pour être appelable par C# et Java)
Cet article partage avec vous l'implémentation du webservice en PHP (testé pour être appelable en C# et Java). Les amis dans le besoin peuvent s'y référer
Utiliser PHP pour créer un webservice dans d'autres langages tels que comme C# et JAVA. Les méthodes de Webservice disponibles sont différentes de la plupart des webservices construits avec PHP décrits sur Internet. Lorsque les paramètres d'entrée et les paramètres de sortie de l'interface sont relativement complexes, il est recommandé d'unifier directement les paramètres d'entrée et les paramètres de sortie en chaîne XML ou chaîne Json. L'accent est mis ici sur la manière d'implémenter un service Web. En ce qui concerne le format des paramètres d'entrée et de sortie, le fonctionnement de la chaîne XML ne sera pas présenté en détail. Vous pouvez effectuer de nombreuses recherches, mais vous devez faire attention au filtrage et à la vérification. paramètres pour XML et json. Cet article présente le service Web avec le fichier wsdl. La méthode no-wsdl est relativement simple et ne sera pas présentée ici
Vous devez d'abord activer l'extension soap, c'est-à-dire php.ini Supprimez le point-virgule avant extension=php_soap.dll dans le fichier et redémarrez Apache. Vérifiez si le savon est activé dans phpinfo. Le fonctionnement spécifique est ignoré ici. La mise en œuvre du service Web nécessite une extension Soap.
Le fichier wsdl généré par la méthode PHP de production de wsdl trouvé en ligne ne peut être utilisé que par PHP, alors ne vous laissez plus tromper. Nous utilisons donc ici une courbe pour enregistrer le pays afin de générer des fichiers wsdl. Créez d’abord un service Web via C# pour générer du wsdl, puis vous pourrez l’utiliser avec seulement de légères modifications.
1. Nouveau projet-> L'application Web ASP.NET crée un projet ;
2.b. ->Choisissez le service Web (ASMX) pour le nouvel élément ;
3. Notez que [WebMethod] doit être ajouté avant la fonction à publier dans. C#, qui peut également inclure Pour créer de nouvelles classes :
4 Après l'écriture, appuyez sur ctrl+F5 pour exécuter et ce qui suit apparaîtra. Après avoir ajouté ?wsdl après le. url, le wsdl apparaîtra comme indiqué ci-dessous, enregistrez-le simplement sous.
5. Remplacez l'emplacement dans
6. Interface du service Web d'écriture PHP :
7.
<?php /** * Created by PhpStorm. * User: Damon * Date: 2018/1/26 * Time: 11:16 */ //引入自动加载 require __DIR__ . '/vendor/autoload.php'; $wsdlfile='MESWebService.wsdl';//wsdl文件路径 $webserver = new \SoapServer($wsdlfile); $webserver->setClass(\Src\MESWebService::class); $webserver->handle();
Utilisez C# pour les tests d'appel
3. Remplissez l'adresse du service Webservice publié dans l'URL. Si l'image suivante apparaît correctement après avoir appuyé sur Entrée, modifiez le nom de la référence Web en fonction de vos besoins et cliquez sur Ajouter une référence :
4. Ensuite, cliquez avec le bouton droit sur le projet->Ajouter->Nouvel élément, sélectionnez le formulaire Web et modifiez le contenu du fichier .aspx.cs.
5.e Enfin, appuyez sur ctrl+F5 pour exécuter pour voir la sortie correspondante, comme indiqué dans la figure. ci-dessous, description Le webservice implémenté par php peut être appelé correctement en C#.
Recommandations associées :
php implémente l'interrogation de MySQL et la mise en cache sur Redis Méthode
Méthode php pour implémenter le socket
php implémente les tests des multi-variables de sortie var_dump et echo
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!