登入

平台服務資訊

服務註冊數:80
服務引用數:288

服務狀態

上線服務:66
離線服務:14

服務引用元件-範例

說明

範例程式下載
一般連線服務引用元件下載
安全連線服務引用元件下載

服務引用元件將認證/授權/呼叫流程整合,簡化了應用系統呼叫WRISP服務的流程,讓開發人員可以更快速地完成與平台整合


準備動作

  • 在撰寫程式碼前,您必需先在 WRISP 服務目錄上查詢您所需要的服務; 承辦人員可以在服務目錄中進行線上的服務使用申請, 在平台管理員或服務管理員審核通過後就會被授予權限使用服務


  • 服務引用元件-ServiceProxy

  • 函式說明

     建構函式:ServiceProxy(string wrispURL ,string account, string password, string serviceid)

     呼叫函式:invokeService(string requestXML)
     回傳:服務執行結果


  • 服務使用步驟

  • 依據您對資料傳輸在安全性上的需求,請在您的專案中擇一引用 GISFCU.WRISP.Utility.dll 組件或是 GISFCU.WRISP.CPSUtility.dll 組件

  • 範例程式

    程式碼:

    1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.UI; 6 using System.Web.UI.WebControls; 7 //******** 8 //如欲測試一般連線模式服務引用元件,請反註解下方的 //using GISFCU.WRISP.Utility;, 9 // 並註解掉下方的using GISFCU.WRISP.CPSUtility;。 10 //using GISFCU.WRISP.Utility; 11 //如欲測試安全連線模式服務引用元件,請反註解下方的 //using GISFCU.WRISP.CPSUtility;, 12 // 並註解掉上方的using GISFCU.WRISP.Utility;。 13 using GISFCU.WRISP.CPSUtility; 14 //******** 15 using System.Text; 16 using GISFCU.WRISP.Controller.I3; 17 namespace ProxyTest 18 { 19 public partial class _Default : System.Web.UI.Page 20 { 21 //********************************************************************************** 22 // 函式名稱: getI3RequestXML 23 // 函式功能: 產生LI-I3 Request 24 // 註: 需依照服務使用技術文件修改 25 //********************************************************************************** 26 private string getI3RequestXML(string ticketNo, string serviceID, 27 string applicationID, string requestXML) 28 { 29 StringBuilder sb = new StringBuilder(); 30 31 sb.Append("<?xml version=\"1.0\" encoding=\"utf-8\"?>"); 32 sb.Append("<WRISPReq xmlns=\"http://isp.wra.gov.tw/cp/cpsp_definition\">"); 33 sb.Append("<WRISP_UserInfo>"); 34 sb.Append("<Name>水資源資訊服務平台</Name>"); 35 sb.Append(string.Format("<UID>{0}</UID>", applicationID)); 36 sb.Append(string.Format("<TicketNO>{0}</TicketNO>", ticketNo)); 37 sb.Append("</WRISP_UserInfo>"); 38 39 sb.Append("<WRISP_AP_ServiceReq>"); 40 sb.Append("<Header>"); 41 sb.Append(string.Format("<ServiceID>{0}</ServiceID>", serviceID)); 42 sb.Append("<ServiceName>服務測試</ServiceName>"); 43 sb.Append(string.Format("<TicketNo>{0}</TicketNo>", ticketNo)); 44 sb.Append("</Header>"); 45 46 sb.Append("<Body>"); 47 sb.Append("<WI:ServiceRecord xmlns:WI=\"http://isp.wra.gov.tw/ws_definition\">"); 48 sb.Append("<WI:QueryRequest>"); 49 sb.Append(requestXML); 50 sb.Append("</WI:QueryRequest>"); 51 sb.Append("</WI:ServiceRecord>"); 52 sb.Append("</Body>"); 53 54 sb.Append("</WRISP_AP_ServiceReq>"); 55 sb.Append("</WRISPReq>"); 56 return sb.ToString(); 57 } 58 59 60 protected void Button1_Click(object sender, EventArgs e) 61 { 62 string url = "wrisp.wra.gov.tw"; 63 //應用系統識別碼,格式:"AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE" 64 string applicationID = ""; 65 //應用系統密碼 66 string appPassword = ""; 67 //服務識別碼,格式:"AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE" 68 string serviceID = ""; 69 //服務呼叫的XML字串,格式:"<WRISPRequest><標籤一>字串一</標籤一> 70 // <標籤二>字串二</標籤二>。。。</WRISPRequest>" 71 string requestXML = "<WRISPRequest><PublishID></PublishID></WRISPRequest>"; 72 ServiceProxy pProxy = new ServiceProxy(url, applicationID, appPassword, serviceID); 73 TextBox1.Text = pProxy.invokeService(getI3RequestXML 74 (pProxy.TicketNo, serviceID, applicationID, requestXML)); //呼叫平台服務 75 } 76 } 77 } 78