how to call dotnet webservice in php

php web service authentication  php web service file transfer

What is web service ?
 For web service you need to know what is xml ? because all communication is go through the xml.

What is XML ?
Xml is a subset of Standard Generalized markup Language (SGML) Its design goal is to be as powerful and flexible as SGML with less complexity.

Web Service:
According to the W3c, Web services "provide a standard means of inter-operating between different software applications,running on variety of platforms and frameworks".  

SOAP acronym that stood for Simple Object Access Protocol .SOAP is powerful tool for comminication between different different operating system and frameworks.SOAP is tied to xml b'cause all messages sent to and from a soap server are sent in soap envelope that is xml.

Here we are calling dot net web service in php.For that you must know how to create a web service in dot net.I am not big fan of not net but I manage to create a simple  dot net  web service that is called in php.This web service simple return factorial of given number.

VB Dot Net Code for Web Service Factorial Method :

 Imports System.Web
 Imports System.Web.Services
 Imports System.Web.Services.Protocols
 ' To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
 ' <System.Web.Script.Services.ScriptService()> _
 <WebService(Namespace:="")> _
 <WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
 <Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
 Public Class Service
    Inherits System.Web.Services.WebService
   <WebMethod()> _
   Public Function factorial(ByVal number As Long) As String
     Dim result As Long = 1
     If number > 0 Then
       Dim i As Integer
       For i = 1 To number
         result = result * i
       Next i
     End If
     Return result
   End Function
 End Class

PHP Web Service client

Note:PHP Web services required NuSoap Library Download it from  

Download Nusoap Lib

PHP Web service code:
  // includes nusoap class
 // Create object
 $client = new nusoap_client('http://localhost:1587/sampledotnetWebService/Service.asmx?wsdl', true);//set your dot net web service url
 $err = $client->getError();
 if ($err) {
   // error if any
   echo '<h2>Constructor error</h2><pre>' . $err . '</pre>';
 // Call mathod
 $result = $client->call('factorial', array('number' => '5'));
 // fault if any
 if ($client->fault) {
   echo '<h2>Fault</h2><pre>';
   echo '</pre>';
 } else {
   // Check for errors
   $err = $client->getError();
   if ($err) {
     // Display the error
     echo '<h2>Error</h2><pre>' . $err . '</pre>';
   } else {
     // Display the result
     echo '<h2>Result</h2><pre>';
     echo "factorial for 5 = ".$result['factorialResult'];
   echo '</pre>';
  //Display the request and response

Buy Me a Beer-If you are like this post

 If you does not have paypal account create free account create account

No comments:

Post a Comment