/
  • مشکل وب سرویس

  • صفحه‌ها (2):
  • ارسال پاسخ   امتیاز موضوع:
    • 0 رأی - میانگین امیتازات: 0
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی مشکل وب سرویس
    نویسنده پیام
    Hamid آفلاین
    حمید رضا رحیمی
    ****

    ارسال‌ها: 577
    تاریخ عضویت: ۱۳۹۰ آبان ۹
    اعتبار: 20
    تشکرها : 554
    ( 368 تشکر در 231 ارسال )
    ارسال: #1
    مشکل وب سرویس
    سلام
    میخوام یه وب سرویس بنویسم که به مشکل برخوردم .

    کدهام :

    server.php

    کد PHP:
    <?php
    //call library 
    require_once ('lib/nusoap.php'); 

    $URL       "www.test.com";
    $namespace $URL '?wsdl';

    $server = new soap_server
    $server->configureWSDL('getmessagetesting'$namespace);
    $server->register('get_message'); 

    function 
    get_message() 

        if(!
    $your_name){ 
            return new 
    soap_fault('Client','','Put Your Name!'); 
        } 
        
    $result "Welcome to Thanks for Your First Web Service Using PHP with SOAP"
        return 
    $result


    $server->service('php://input'); 
    exit(); 
    ?>

    client.php

    کد PHP:
    <?php 
    require_once ('lib/nusoap.php');
    $param = array( 'your_name' => 'Monotosh Roy'); 

    $client = new nusoap_client('http://127.0.0.1/WebServiceSOAP/server.php?wsdl');
    $response $client->call('get_message'); 

    if(
    $client->fault

        echo 
    "FAULT: <p>Code: (".$client->faultcode."</p>"
        echo 
    "String: ".$client->faultstring

    else 

        echo 
    $response

    ?>

    ارروری که دارم !!!

    نقل قول: FAULT:

    Code: (SOAP-ENV:Client
    String: error in msg parsing: XML error parsing SOAP payload on line 1: Not well-formed (invalid token)
    __________________________________________________________________________
    ۱۳۹۳ آذر ۲ ۰۶:۵۴ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    Reza آفلاین
    رضا شیخله
    *****

    ارسال‌ها: 3,024
    تاریخ عضویت: ۱۳۹۰ آبان ۱۶
    اعتبار: 133
    تشکرها : 2724
    ( 2718 تشکر در 1692 ارسال )
    ارسال: #2
    RE: مشکل وب سرویس
    چاکر داش حمید
    بیا اینم یه وبسرویس با سه تا متد مختلف برات نوشتم جیگرت حال بیاد . Big Grin
    server.php
    کد PHP:
    <?php

    include 'nusoap_client.php';


    //func1
    function reza($name='name',$email='email',$phone='phone')
    {
        return 
    "myname is $name and email is $email and phone $phone";
    }

    //func2
    function get_message($number=10)
    {
        return 
    "You get  $number";
    }

    //func3
    function get_message2()
    {
        return 
    time();
    }



    $namespace 'http://example.org';
    $server = new nusoap_server();
    $server->soap_defencoding 'UTF-8';

    $server->configureWSDL('hamid_webservice');
    $server->wsdl->schemaTargetNamespace $namespace;
     
    //func1
    $server->register('reza',
            array(
    'name' => 'xsd:string''email' => 'xsd:string','phone' => 'xsd:integer'),
            array(
    'return' => 'xsd:string'),'http://soapinterop.org');  
            
    //func2
    $server->register('get_message',
            array(
    'number' => 'xsd:integer'),
            array(
    'return' => 'xsd:string'),'http://soapinterop.org'); 
    //func3

    $server->register('get_message2',
            array(),
            array(
    'return' => 'xsd:string'),'http://soapinterop.org');         


            
            
    $POST_DATA = isset($GLOBALS['HTTP_RAW_POST_DATA'])
                    ? 
    $GLOBALS['HTTP_RAW_POST_DATA'] : '';
                      
    $server->service($POST_DATA);            
    exit(); 

    اینم client.php
    کد PHP:
    <?php
    include 'nusoap_client.php';

    $client = new nusoap_client('http://localhost/a_test/hamid/server.php?wsdl');
    $err $client->getError();
    if(
    $err)
    {
        
    print_r($err);
        die;
    }


    //func1

    echo $client->call('reza',array('reza','info@rezaonline.net','9360')); //myname is reza and email is info@rezaonline.net and phone 9360


    echo '<hr>';

    echo 
    $client->call('get_message',array(25)); //You get 25


    echo '<hr>';

     echo 
    $client->call('get_message2');//1416767795 

    اینم کدها
    http://up.vbiran.ir/uploads/194551416768..._hamid.rar

    نگران هیچی نشی یه وقت تا منو داری Heart
    __________________________________________________________________________
    -- - RezaWorkShop.ir - blog.RezaOnline.net
    ۱۳۹۳ آذر ۲ ۱۱:۰۸ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : Hamid payam RaminMT
    Hamid آفلاین
    حمید رضا رحیمی
    ****

    ارسال‌ها: 577
    تاریخ عضویت: ۱۳۹۰ آبان ۹
    اعتبار: 20
    تشکرها : 554
    ( 368 تشکر در 231 ارسال )
    ارسال: #3
    RE: مشکل وب سرویس
    زضا دوست دارم .
    و متقابلا از soap و داکیومنت ها متنفرم که دیروز بیچارم کردن Big Grin
    __________________________________________________________________________
    ۱۳۹۳ آذر ۳ ۱۰:۴۶ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    ars31277 آفلاین
    عضو جدید
    **

    ارسال‌ها: 10
    تاریخ عضویت: ۱۳۹۱ مهر ۱۷
    اعتبار: 0
    تشکرها : 1
    ( 0 تشکر در 0 ارسال )
    ارسال: #4
    RE: مشکل وب سرویس
    (۱۳۹۳ آذر ۲ ۱۱:۰۸ عصر)Reza نوشته شده توسط:  چاکر داش حمید
    بیا اینم یه وبسرویس با سه تا متد مختلف برات نوشتم جیگرت حال بیاد . Big Grin
    server.php
    کد PHP:
    <?php

    include 'nusoap_client.php';


    //func1
    function reza($name='name',$email='email',$phone='phone')
    {
        return 
    "myname is $name and email is $email and phone $phone";
    }

    //func2
    function get_message($number=10)
    {
        return 
    "You get  $number";
    }

    //func3
    function get_message2()
    {
        return 
    time();
    }



    $namespace 'http://example.org';
    $server = new nusoap_server();
    $server->soap_defencoding 'UTF-8';

    $server->configureWSDL('hamid_webservice');
    $server->wsdl->schemaTargetNamespace $namespace;
     
    //func1
    $server->register('reza',
            array(
    'name' => 'xsd:string''email' => 'xsd:string','phone' => 'xsd:integer'),
            array(
    'return' => 'xsd:string'),'http://soapinterop.org');  
            
    //func2
    $server->register('get_message',
            array(
    'number' => 'xsd:integer'),
            array(
    'return' => 'xsd:string'),'http://soapinterop.org'); 
    //func3

    $server->register('get_message2',
            array(),
            array(
    'return' => 'xsd:string'),'http://soapinterop.org');         


            
            
    $POST_DATA = isset($GLOBALS['HTTP_RAW_POST_DATA'])
                    ? 
    $GLOBALS['HTTP_RAW_POST_DATA'] : '';
                      
    $server->service($POST_DATA);            
    exit(); 

    اینم client.php
    کد PHP:
    <?php
    include 'nusoap_client.php';

    $client = new nusoap_client('http://localhost/a_test/hamid/server.php?wsdl');
    $err $client->getError();
    if(
    $err)
    {
        
    print_r($err);
        die;
    }


    //func1

    echo $client->call('reza',array('reza','info@rezaonline.net','9360')); //myname is reza and email is info@rezaonline.net and phone 9360


    echo '<hr>';

    echo 
    $client->call('get_message',array(25)); //You get 25


    echo '<hr>';

     echo 
    $client->call('get_message2');//1416767795 

    اینم کدها
    http://up.vbiran.ir/uploads/194551416768..._hamid.rar

    نگران هیچی نشی یه وقت تا منو داری Heart

    سلام بزروار واقعا از شما ممونمبابت کد وب سرویستون حالا یک سوال:
    اگر خروجی ما ارایه باشه باید چیگار کنیم من تست کردم جواب نداد
    ممنون میشم راهنماییم کنید
    ۱۳۹۵ فروردين ۶ ۰۵:۴۱ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    Reza آفلاین
    رضا شیخله
    *****

    ارسال‌ها: 3,024
    تاریخ عضویت: ۱۳۹۰ آبان ۱۶
    اعتبار: 133
    تشکرها : 2724
    ( 2718 تشکر در 1692 ارسال )
    ارسال: #5
    RE: مشکل وب سرویس
    nusoap خروجی آرایه نمیده
    شما به فرم json تبدیلش کنید وبصورت رشته برش گردونید .

    در کل دیگه soap منسوخ شده ، سعی کنید restful بنویسید با خروجی نوع json و xml بصورت آپشنال
    __________________________________________________________________________
    -- - RezaWorkShop.ir - blog.RezaOnline.net
    ۱۳۹۵ فروردين ۶ ۱۰:۱۳ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    ars31277 آفلاین
    عضو جدید
    **

    ارسال‌ها: 10
    تاریخ عضویت: ۱۳۹۱ مهر ۱۷
    اعتبار: 0
    تشکرها : 1
    ( 0 تشکر در 0 ارسال )
    ارسال: #6
    RE: مشکل وب سرویس
    (۱۳۹۵ فروردين ۶ ۱۰:۱۳ عصر)Reza نوشته شده توسط:  nusoap خروجی آرایه نمیده
    شما به فرم json تبدیلش کنید وبصورت رشته برش گردونید .

    در کل دیگه soap منسوخ شده ، سعی کنید restful بنویسید با خروجی نوع json و xml بصورت آپشنال

    سلام می تونید برای restfulهم یک مثال روان که اینحا گزاشتید بزارید تشکر
    راستی من قسمت wsdlرو تو مودتون حڌف کردم آرایه ارسال شد این بعدا مسکل ساز میشه؟
    ۱۳۹۵ فروردين ۷ ۰۸:۲۶ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    Reza آفلاین
    رضا شیخله
    *****

    ارسال‌ها: 3,024
    تاریخ عضویت: ۱۳۹۰ آبان ۱۶
    اعتبار: 133
    تشکرها : 2724
    ( 2718 تشکر در 1692 ارسال )
    ارسال: #7
    RE: مشکل وب سرویس
    با nusoap که وصل بشید آرایه رو نمیتونید بگیرید نمیدونم چرا

    Sleepy
    __________________________________________________________________________
    -- - RezaWorkShop.ir - blog.RezaOnline.net
    ۱۳۹۵ فروردين ۷ ۱۱:۳۳ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    ars31277 آفلاین
    عضو جدید
    **

    ارسال‌ها: 10
    تاریخ عضویت: ۱۳۹۱ مهر ۱۷
    اعتبار: 0
    تشکرها : 1
    ( 0 تشکر در 0 ارسال )
    ارسال: #8
    RE: مشکل وب سرویس
    (۱۳۹۵ فروردين ۷ ۱۱:۳۳ عصر)Reza نوشته شده توسط:  با nusoap که وصل بشید آرایه رو نمیتونید بگیرید نمیدونم چرا

    Sleepy

    ولی من الان تو فایلی که براتون میزام تونستم ارا رو در قسمت client بگیرم
    server.php
    کد PHP:
    <?php
     
    require_once('lib/nusoap.php');
    //require("Connection.class.php"); 
    $server = new nusoap_server;
    //$server ->configureWSDL('server', 'urn:server');
    //$server ->wsdl->schemaTargetNamespace = 'urn:server';
    //$server ->register('pollServer', array('value' => 'xsd:string'), array('return' => 'xsd:string'), 'urn:server', 'urn:server#pollServer');

    //register a function that works on server
    $server ->register('getfeedDetails', array('value' => 'xsd:string'), array('return' => 'xsd:string'), 'urn:server''urn:server# getfeedDetails');




    // create the function to fetch Data’s from Database
    function getfeedDetails ()
    {
                  
    $conn mysql_connect('localhost','root','');
                    
    mysql_select_db('webservice'$conn);
                    
    $sql "SELECT * FROM book";
                    
    $q mysql_query($sql);
                           
    $items = array();
                    while(
    $row mysql_fetch_array($q)){

                                    
    $items [] = array(
                                                            
    'story_url'=>$row['cd'],
                                                            
    'story_title'=>$row['title'],
                                                            
    'story_description'=>$row['author'],
                                                            
    'story_image'=>$row['publisher']
                                        );
                    }
                          return 
    $items;

    }

    $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA '';
    $server ->service($HTTP_RAW_POST_DATA);
    ?>
    client.php
    کد PHP:
    <?php
    require_once('lib/nusoap.php');
    $url "http://localhost/a/webservise/server.php";
    $client = new nusoap_client($url);
    //Call server function
    $response $client ->call('getfeedDetails');

    if(
    $client->fault)
    {
                    echo 
    "FAULT: <p>Code: (".$client ->faultcode.")</p>";
                    echo 
    "String: ".$client->faultstring;
    }
    else
    {
                    
    $result $response;
                    
    $count count($result);
    ?>
        <table >
        <tr>
                    <th>Story Url</th>
                    <th>Story Title</th>
                    <th>Story Description</th>
                    <th>Story Image</th>
        </tr>
        <?php
    print_r
    ($result);
        for(
    $i 0;$i $count;$i++) {
                      
    $rowtype = ($i 2) ? "style='background:#88DAEB'""style=background:#FFF";
                      echo 
    $i;
            
    ?>
        <tr <?php echo $rowtype?>>
                    <td><?php echo $result[$i]['story_url']?></td>
                    <td><?php echo $result[$i]['story_title']?></td>
                    <td><?php echo $result[$i]['story_description']?></td>
                    <td><?php echo $result[$i]['story_image']?></td>
        </tr>
        <?php
                    
    }
                    
    ?>
        </table>
        <?php
    }
     
    ?>
    <style type="text/css">
        th {
            background:#007F99;
            color:#fff;
        }
    </style> 
    من کد
    کد PHP:
    $server->configureWSDL('shekofteh_webservice'); 
    رو حذف کردم حواب داد.
    حالا میخوام بدونم با حذف این خط بعد ها به مشکل بر میخورم

    (۱۳۹۵ فروردين ۷ ۰۸:۲۶ عصر)ars31277 نوشته شده توسط:  
    (۱۳۹۵ فروردين ۶ ۱۰:۱۳ عصر)Reza نوشته شده توسط:  nusoap خروجی آرایه نمیده
    شما به فرم json تبدیلش کنید وبصورت رشته برش گردونید .

    در کل دیگه soap منسوخ شده ، سعی کنید restful بنویسید با خروجی نوع json و xml بصورت آپشنال

    سلام می تونید برای restfulهم یک مثال روان که اینحا گزاشتید بزارید تشکر
    راستی من قسمت wsdlرو تو مودتون حڌف کردم آرایه ارسال شد این بعدا مسکل ساز میشه؟

    در مورد rest ful من چند تا مثال خوب دیدم که میزام اینجا دوستان هم استفاده کنند فقط من یک مشکلی دارم
    اینه که برای وب سرویس restful قسمت کلاینت چظوری باید باشه یعنی کاربر چطوری به وب سرویس من با چه دستوراتی باید وصل شه؟


    فایل‌(های) پیوست شده
    .zip  restexample.zip (اندازه: 3.1 KB / تعداد دفعات دریافت: 39)
    (آخرین ویرایش در این ارسال: ۱۳۹۵ فروردين ۸ ۰۱:۳۸ صبح، توسط ars31277.)
    ۱۳۹۵ فروردين ۸ ۰۱:۳۴ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    Reza آفلاین
    رضا شیخله
    *****

    ارسال‌ها: 3,024
    تاریخ عضویت: ۱۳۹۰ آبان ۱۶
    اعتبار: 133
    تشکرها : 2724
    ( 2718 تشکر در 1692 ارسال )
    ارسال: #9
    RE: مشکل وب سرویس
    نقل قول: اینه که برای وب سرویس restful قسمت کلاینت چظوری باید باشه یعنی کاربر چطوری به وب سرویس من با چه دستوراتی باید وصل شه؟
    خب اینکه کاربر چه پارامترهایی رو بفرسته ترکیبی کلید و مقدار هست که بصورت GET یا POST شده میتونه بفرسته به یک url

    و url شما باید/بهتر است بصورت زیر باشد

    example.ir/api/method

    که method اسم متد است که کاربر ست میکند مثلا همین getfeedDetails
    __________________________________________________________________________
    -- - RezaWorkShop.ir - blog.RezaOnline.net
    ۱۳۹۵ فروردين ۸ ۰۲:۲۷ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    ars31277 آفلاین
    عضو جدید
    **

    ارسال‌ها: 10
    تاریخ عضویت: ۱۳۹۱ مهر ۱۷
    اعتبار: 0
    تشکرها : 1
    ( 0 تشکر در 0 ارسال )
    ارسال: #10
    RE: مشکل وب سرویس
    (۱۳۹۵ فروردين ۸ ۰۲:۲۷ صبح)Reza نوشته شده توسط:  
    نقل قول: اینه که برای وب سرویس restful قسمت کلاینت چظوری باید باشه یعنی کاربر چطوری به وب سرویس من با چه دستوراتی باید وصل شه؟
    خب اینکه کاربر چه پارامترهایی رو بفرسته ترکیبی کلید و مقدار هست که بصورت GET یا POST شده میتونه بفرسته به یک url

    و url شما باید/بهتر است بصورت زیر باشد

    example.ir/api/method

    که method اسم متد است که کاربر ست میکند مثلا همین getfeedDetails
    منظورتون رو متوجه نشدم کاربر باید با دستوری مثل curl اطلاعات رو بفرسته سمت سرور من
    یا بصورت دستی url مورد نظر رو تو مرورگر تایپ کنه؟
    ۱۳۹۵ فروردين ۸ ۰۳:۰۲ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    « قدیمی تر | تازه‌ تر »

  • صفحه‌ها (2):
  • ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS