mohammad
5 سال پیش توسط mohammad مطرح شد
2 پاسخ

کار با soap و WSDL

با عرض سلام و خسته نباشید
بنده قصد کار با یک api را دارم که در قالب soap ارایه شده و به مشکلاتی برای ارتباط گرفتن با api موجود برام پیش اومده که نتونستم هنوز ارتباط رو برقرار کنم.
در مثال موجود یک متد برای ارسال درخواست وجود دارد متد requestSub نام گذاری شده است.
این متد دو ورودی دارد که ورودی اول به صورت استرینگ و ورودی دوم ( نکته ای که متوجهش نمی شوم ) از نوع SubReqViewModel می باشد.
که در توضیحش نوشته شده کلاس SubReqViewModel به عنوان ورودی گرفته شود که شامل پارامتر هایی چون :
fname -> string
lname -> string
.
.
.
.

می باشد.
و بعد از اجرای صحیح متد بالا با ورودی های مورد نظرش یک خروجی به ما میده.

مشکل من در نحوه ارتباط برقرار کردن و فرستادن کلاسی که گفته ( SubReqViewModel ) به عنوان ورودی هستش.

ممنون میشم راهنمایی کنید.

سپاس فراوان


ثبت پرسش جدید
حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 5 سال پیش مطرح شد
0

سلام راهنمایی در مورد این سوال نیاز به توضیحات بیشتری از کد مورد نظرتون داره بدونه دیدن کد نمیشه دقیق گفت


mohammad
@ilbeygi.m 5 سال پیش مطرح شد
0

مشکل اینجاست که بنده هیچ کدی ننوشتم.
چون هر کدی نوشتم ارور داده.
تنها چیزی که دستم هست یک داکیومنت اتصال هست که موارد بالا رو توش نوشته.

به علت یک سری مسایل مثل منع افشای اطلاعات نمیتونم کد کامل رو بذارم ولی شبه کدی که نوشتم رو میگم اینجا شاید کمکی کرد.


$client = new SoapClient("path/to/url.asmx?wsdl");

class SubReqViewModel
{
    function __construct($FistName, $LastName, $Telephone, $Mobile, $Email, $NationalCode, $Gender){

        $this->$FistName = $FistName;
        $this->LastName = $LastName;
        $this->Telephone = $Telephone;
        $this->Mobile = $Mobile;
        $this->Email = $Email;
        $this->NationalCode = $NationalCode;
        $this->Gender = $Gender;

    }
}

$city = new SubReqViewModel(
    "ahmad",
    'alinia',
    "051321321321",
    "09154545454",
    "main@asdsad",
    "06913245648",
    "true"
);

$key = 'api key';

$param = [
    [
        "key" => $key,
        "request" => $city
    ]
];

$res = $client->__soapCall('RequestSub', $param);

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام