• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
استفاده امن از nusoap
#1
داخل پروژم میخام از nusoap استفاده کنم .
اول میخاستم بدونم تابع setCredentials دقیقا کارش چی هست و چه نقشی تو امنیت داده ها داره و چطوری میشه ازش استفاده کرد؟؟
تو نحوه استفاده از soap مشکلی ندارم داخل سرور یه تابع میسازم و register میکنم و نوع ورودی و خروجیش رو مشخص میکنم نمونه کد هام رو هم میزارم اما سوال اصلیم اینه که میخام این سرویس کاملا امن باشه اما چون آشنایی کاملی با nusoap ندارم نمیدونم باید چیکار کنم دوستانی که قبلا کار کردن بگن چطوری میشه این نمونه کد ها رو امنیت تر کرد ؟؟؟

کد پی‌اچ‌پی:
<?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();
[
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','[email protected]','9360'));


echo 
'<hr>';

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


echo 
'<hr>';

 echo 
$client->call('get_message2'); 
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان