آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

ارتباط با وب سرویس ها به کمک soap (تفاوت آن با post , get ؟ )

ahmad_r  9 سال پیش  9 سال پیش
+2 0

سروری با web serviceهای دات نتی نوشته شده و آماده در اختیار من قرار داده شده و از من خواسته شده تا با اندروید با این W.S ها و به کمک Soap ارتباط برقرار کنم.

لطفا کمی درباره Soap و تفاوت کاربردهای آن با متدهای get , post آموزش داده شده توسط استاد توضیح دهید

(منظورم از لحاظ  کاربرد هر کدام هست نه بحث فنی نحوه اتصال)

درضمن نمونه برنامه ارتباط با وب سرویس رو از اینجا به دست آوردم ولی چون بحث سرورش با شخص دیگه ای بوده یکم با مرتبط کردن با پروژه خودم مشکل دارم که باید روش کار کنم ولی سوالم اینه که مگر Soap یک استاندارد نیست پس چرا تو این سایت نحوه فراخوانی وب سرویس دات نت و جاوا رو جدا آموزش داده.

ممنون

0 0
soap یک نوع ارتباط هست که تغریبا مثل post کردن میمونه اما با این تفاوت که اطلاعات بین سرور و کلاینت با امنیت بیشتری تبادل میشه ، توی php که بنده با هاش کار کردم نیاز به extension هست برای اتصال که بر روی سرور میبایست نصب شده باشه اگر اون نباشه باید از نوع Non-SOAP استفاده بشه که اون هم سرویس دهنده باید پشتیبانیش کنه و استفاده کننده باید از کتابخانه مربوط به این متد استفاده کنه ، مگه سرویستون چی هست که از این نوع وب سرویس استفاده کرده ؟ بیشتر بانک ها و ... از این نوع وبسرویس ها استفاده میکنن ... (9 سال پیش)
+1 0
soap اینه : لینک - مثل post نیست. مبناش انتقال چیزی غیر از استرینگ با شکل و شمایل XML بوده ولی الان با توجه به تنوع کلاینت ها برنامه نویسا بیشتر باهاش همون استرینگ رو انتقال میدن. استفاده از soap امنیت خاصی رو به دنبال نداره که به بانکها مربوط بشه. معمولا به طور مثال اگه کلاینت استفاده کننده از سرویس هم دات نتی باشه میشه آبجکت های دات نتی رو به جای رشته منتقل کرد. (9 سال پیش)
0 0
امنیت به معنای اطمینان از ارسال صحیح و دریافت صحیح درخواست منظور بنده بود ;) (9 سال پیش)
0 0
آقا وحید درست متوجه " مگه سرویستون چی هست که از این نوع وب سرویس استفاده کرده ؟" نشدم. من که اطلاعاتی از وب سرویس ندادم . راستش نمی دونم soap یا non-soap. علاوه بر برنامه نویس سمت سرور چطوری میشه این رو (soap یا non-sop) تشخیص داد (9 سال پیش)
0 0
خود سرویس دهنده اعلام میکنه که من این دو مورد رو دارم و یا یکی رو دارم و آدرس وبسرویس رو هم میده ... (9 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
محمد حسین زاده  9 سال پیش
+4 0

ورب های get . post استاندارد برای ارتباط کلاینت سروری هستن. وب سروریس های دات نت با چیزی که آموزش دیدید تفاوتی نداره و دقیقا با جایگذاری آدرس وب سرویس به جای آدرس صفحه PHP خودتون قابل اجراست. نحوه استفاده همونه. فقط کافیه داکیومنت درستی از وب سرویس رو در اختیار داشته باشید.

soap هم یه استاندارد قدیمی تقریبا منسوخ شده هستش که با Rest جایگزین شده. هنوز خیلیا از soap استفاده میکنن که دلیل عمدش نا آشنا بودن با Rest و زمانگیر بودن اجراشه : http://stackoverflow.com/questions/19884295/soap-vs-rest-differences

تنها آیتمی که میمونه خروجی وب سرویس هستش که اگه json نباشه سمت کلاینت باید پارسر متفاوتی رو پیاده سازی کنید

0 0
آیا من درست متوجه شدم؟ کلا وب سرویس ها را با زبان دلخواه (.net , java , php) مینویسند و خروجی استاندارد (soap یا Rest ) دریافت میکنند که به سمت کلاینت میره (9 سال پیش)
0 0
اساس وبسرویس همینه، یک زبان میانی هست برای ارتباط با دیگر برنامه ها و با هر زبانی میشه نوشتش مهم خروجی استاندارد هست ... (9 سال پیش)
پاسخ به سوال 
ahmad_r  9 سال پیش
0 0

اگه یکم درباره برنامه sample فوق توضیح بدید (مخصوصا پارامترهای به کار رفته و متغیرهای استفاده شده) فکر کنم بتونم وصلش کنم به سروری که هیچیش رو نمیدونم. 

 private final String  NAMESPACE  ="http://www.w3schools.com/webservices/";
 private final String  URL        ="http://www.w3schools.com/webservices/tempconvert.asmx";
 private final String  SOAP_ACTION="http://www.w3schools.com/webservices/CelsiusToFahrenheit";
 private final String  METHOD_NAME="CelsiusToFahrenheit";
 
+2 0
آدرس لینک رو باز کن، یه متد رو انتخاب کن، عدد رو وارد کن، Invoke که بکنی تبدیل رو برات انجام میده. وب سرویس اصلی خودت هم همین صفحات رو داره (مگر اینکه غیر فعال شده باشه). تو لازمه که فقط اون عدد رو به آدرس وب سرویست پست کنی (9 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .