code behind file برنامه: کد: using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; //this is the proxy using localhost; public partial class Default1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { lblmessage.Text = "First Loading Time: " + DateTime.Now.ToLongTimeString(); } else { lblmessage.Text = "PostBack at: " + DateTime.Now.ToLongTimeString(); } } protected void btnservice_Click(object sender, EventArgs e) { StockService proxy = new StockService(); lblmessage.Text = String.Format("Current SATYAM Price:{0}", proxy.GetPrice("SATYAM").ToString()); } protected void Button1_Click(object sender, EventArgs e) { } }
ایجاد proxy پیشکار، proxy برنامه واسطهای بین کاربر داخلی شبکه و اینترنت است که قابلیتهای فراوانی در راستای حفظ امنیت، نظارت مدیریتی، کنترل کاربران و سرویسهای ذخیرهسازی دارد. proxy سرور امکان ایجاد فیلترهایی خاص را برای امنیت بیشتر در شبکه فراهم میکند، قابلیت ذخیرهسازی، سرعت دستیابی به اطلاعات را بالا میبرد و با سیستمهای تصدیق هویت و تغییر هویت، ضامن امنیت در شبکه داخلی سازمان است و نیز امکان ثبت گزارش کامل کارکردش را دارد. همچنین قابلیت مسدود کردن محتویات آسیبرسان و بررسی تبعیت از قوانین برقرار شده در شبکه را دارا میباشد. proxy سرور امکان استفاده از اکثر پروتکلهای محلی را فراهم میآورد و امکان رمز گذاری دادهها را نیز دارا می باشد. proxyها انواع مختلفی دارند که هر یک کار خاصی را انجام میدهد، که از آن جمله میتوان FTP ، HTTP ، SMTP و DNS را نام برد. Proxy در واقع به عنوان یک جانشین یا نماینده برای کدهای سرویس ایفای نقش می کند. ایجاد proxy پیش از استفاده از web service الزامی است. Proxy با برنامه ی کلاینت رجیستر می شود، پس از آن برنامه ی کلاینت web service را مانند یک تابع محلی (local method) فرامی خواند. Proxy فراخوانی ها را دریافت کرده و آن را در قالب یا فرمت مناسب جای می دهد (wrap)، سپس آن را به صورت SOAP request (پروتکل دسترسی آسان به اشیا) به server ارسال می کند. SOAP سرواژه ی Simple Object Access Protocol می باشد. با استفاده از پروتکل دسترسی آسان به اشیاء (Simple Object Access Protocol - SOAP) میتوان به ارسال و تبادل پیامهایی از نوع XML بر روی شبکههای رایانهای مبادرت کرد. به وسیله ی این پروتکل می توان به تبادل داده های web service پرداخت. هنگامی که server پکیج SOAP را به کلاینت بازمی گرداند، proxy به رمز گشایی تمامی محتویات آن پرداخته سپس آن را در اختیار برنامه ی کلاینت (client application) می گذارد.
پیش از فراخوانی web service با استفاده از btnservice_Click، لازم است یک ارجاع به وب (web reference) به برنامه اضافه گردد. این کار یک کلاس proxy به صورت transparent ایجاد می کند که توسط رخداد btnservice_Click مورد استفاده قرار می گیرد. کد: protected void btnservice_Click(object sender, EventArgs e) { StockService proxy = new StockService(); lblmessage.Text = String.Format("Current SATYAM Price:{0}", proxy.GetPrice("SATYAM").ToString()); }
جهت ایجاد proxy مراحل زیر را دنبال کنید: مرحله (1): روی مدخل (entry) web applicationدر پنجره ی Solution Explorer راست کلیک کرده و گزینه ی 'Add Web Reference' را انتخاب کنید:
مرحله (3): کلیک روی سرویس test web page را باز می کند. Proxy ایجاد شده به صورت پیش فرض 'localhost' نامیده می شود، در صورت تمایل می توانید آن را مجددا نام گذاری کنید. اکنون با کلیک روی 'Add Reference'، proxy را به برنامه ی کلاینت اضافه کنید. با افزودن کد زیر، proxy را در فایل code behind بگنجانید: کد: using localhost;