當前位置:首頁 » 網頁前端 » web伺服器介面
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

web伺服器介面

發布時間: 2022-05-23 01:00:08

① 怎樣通過http調用web伺服器的介面

WebRequest request = WebRequest.Create(url);
request.Method = "Post";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = postData.Length;
StreamWriter sw = new StreamWriter(request.GetRequestStream());
sw.Write(postData);
sw.Flush();

WebResponse response = request.GetResponse();
Stream s = response.GetResponseStream();
StreamReader sr = new StreamReader(s, Encoding.GetEncoding("gb2312"));
MessageBox.Show(sr.ReadToEnd());

sw.Dispose();
sw.Close();
sr.Dispose();
sr.Close();
s.Dispose();
s.Close();

② web service介面 wsdl和asmx有什麼區別

Web service一般就是用SOAP協議通過HTTP來調用它,其實他就是一個WSDL文檔,客戶都可以閱讀WSDL文檔來用這個Web service。客戶根據WSDL描述文檔,會生成一個SOAP請求消息。Web service都是放在Web伺服器 (如IIS) 後面的,客戶生成的SOAP請求會被嵌入在一個HTTP POST請求中,發送到Web伺服器來。Web伺服器再把這些請求轉發給Web service請求處理器。請求處理器的作用在於,解析收到的SOAP請求,調用Web service,然後再生成相應的SOAP應答。Web伺服器得到SOAP應答後,會再通過HTTP應答的方式把它送回到客戶端。
個人以為就把webservice當成是Http這種請求和響應方式就可以處理大部分問題了。
SOAP 使用 HTTP 傳送 XML,盡管HTTP 不是有效率的通訊協議,而且 XML 還需要額外的文件解析(parse),兩者使得交易的速度大大低於其它方案。但是XML 是一個開放、健全、有語義的訊息機制,而 HTTP 是一個廣泛又能避免許多關於防火牆的問題,從而使SOAP得到了廣泛的應用。但是如果效率對自己來說很重要,那麼應該多考慮其它的方式,而不要用 SOAP。

為了更好的理解SOAP,HTTP,XML如何工作的,不妨先考慮一下COM/DCOM的運行機制,DCOM處理網路協議的低層次的細節問題,如PROXY/STUB間的通訊,生命周期的管理,對象的標識。在客戶端與伺服器端進行交互的時候,DCOM採用NDR(Network Data Representation)作為數據表示,它是低層次的與平台無關的數據表現形式。

③ webService介面是什麼

Web是使應用程序可以與平台和編程語言無關的方式進行相互通信的一項技術。Web 服務是一個軟體介面,它描述了一組可以在網路上通過標准化的 XML 消息傳遞訪問的操作。

它使用基於 XML 語言的協議來描述要執行的操作或者要與另一個 Web 服務交換的數據。一組以這種方式交互的 Web 服務在面向服務的體系結構(Service-Oriented Architecture,SOA)中定義了特殊的 Web 服務應用程序。

簡單的說WebService是一個SOA(面向服務的編程)的架構,它是不依賴於語言,不依賴於平台,可以實現不同的語言(通過xml描述)間的相互調用,通過Internet進行基於Http協議的網路應用間的交互。

通過SOAP在Web上提供的軟體服務,使用WSDL文件進行說明,並通過UDDI進行注冊。

(3)web伺服器介面擴展閱讀

Web Service技術, 能使得運行在不同機器上的不同應用無須藉助附加的、專門的第三方軟體或硬體, 就可相互交換數據或集成。

依據Web Service規范實施的應用之間, 無論它們所使用的語言、 平台或內部協議是什麼, 都可以相互交換數據。Web Service是自描述、 自包含的可用網路模塊, 可以執行具體的業務功能。

web廣泛用到的技術:

TCP/IP:通用網路協議,被各種設備使用

HTML(標准通用標記語言下的一個應用):通用用戶界面,可以使用HTML標簽顯示數據

NET: 不同應用程序間共享數據與數據交換

Java:寫一次可以在任何系統運行的通用編程語言,因為java具有跨平台特性

XML(標准通用標記語言下的一個子集):通用數據表達語言,在web上傳送結構化數據的容易方法

④ webservice介面怎麼使用

webservice的調用,常用的大約有3種方式:
1、使用axis調用
2、使用xfire調用
3、使用cxf調用
項目中,採用axis進行調用,記錄如下,備忘:
ps教程:想當年的時候是用的xfire方式調用的,結果沒做記錄,現在已經完全記不得怎麼玩了。所以說要多寫博客啊 t_t
版本說明:
aixs版本:axis-bin-1_4.zip
java環境略
第一步:確保wsdl文件可用,文中為獲取到sendsmsservice.wsdl,當然url的也行。
第二步:執行生成客戶端代碼的腳本。腳本內容為:
set axis_lib=d:axis-1_4lib
set java_cmd=java -djava.ext.dirs=%axis_lib%
set output_path=.
set package=info.jyzh.wap.liaoning.push
%java_cmd% org.apache.axis.wsdl.wsdl2java sendsmsservice.wsdl -o%output_path% -p%package% -t

#查看wsdl2java的使用幫助#%java_cmd% org.apache.axis.wsdl.wsdl2java -help

ok,至此,客戶端代碼就生成出來了。還帶了一個單元測試哦。

實際工作中,碰到以下情況,客戶端不能直接連上webservice伺服器,中間被強大的代理伺服器擋住了。如下圖:

為此,修改生成的代碼,本次是在中作修改,如下:
static {
axisproperties.setproperty("http.proxyhost","88.88.88.88");
axisproperties.setproperty("http.proxyport","8080");
axisproperties.setproperty("http.proxyuser","asp教程yy");
axisproperties.setproperty("http.proxypassword","123456");
_operations = new org.apache.axis.description.operationdesc[1];
_initoperationdesc1();
}直接axis調用遠程的web service我覺得這種方法比較適合那些高手,他們能直接看懂xml格式的wsdl文件,我自己是看不懂的,尤其我不是專門搞這行的,即使一段時間看懂,後來也就忘記了。直接調用模式如下:import java.util.date;import java.text.dateformat;import org.apache.axis.client.call;import org.apache.axis.client.service;import javax.xml.namespace.qname;import java.lang.integer;import javax.xml.rpc.parametermode; public class caclient { public static void main(string[] args) { try { string endpoint = "http://localhost:8080/ca3/services/casynrochnized?wsdl"; //直接引用遠程的wsdl文件 //以下都是套路
service service = new service(); call call = (call) service.createcall(); call.settargetendpointaddress(endpoint); call.setoperationname("adser");//wsdl裡面描述的介面名稱 call.addparameter("username", org.apache.axis.encoding.xmltype.xsd_date, javax.xml.rpc.parametermode.in);//介面的參數 call.setreturntype(org.apache.axis.encoding.xmltype.xsd_string);//設置返回類型
string temp = "測試人員"; string result = (string)call.invoke(new object[]{temp}); //給方法傳遞參數,並且調用方法 system.out.println("result is "+result); } catch (exception e) { system.err.println(e.tostring()); } }}2,直接soap調用遠程的webservice這種模式我從來沒有見過,也沒有試過,但是網路上有人貼出來,我也轉過來import org.apache.soap.util.xml.*;import org.apache.soap.*;import org.apache.soap.rpc.*; import java.io.*;import java.net.*;import java.util.vector; public class caservice{ public static string getservice(string user) { url url = null; try { url=new url("http://192.168.0.100:8080/ca3/services/casynrochnized"); } catch (malformerlexception mue) { return mue.getmessage(); } // this is the main soap object call soapcall = new call(); // use soap encoding soapcall.setencodingstyleuri(constants.ns_uri_soap_enc); // this is the remote object we're asking for the price soapcall.settargetobjecturi("urn:xmethods-casynrochnized"); // this is the name of the method on the above object soapcall.setmethodname("getuser"); // we need to send the isbn number as an input parameter to the method vector soapparams = new vector(); // name, type, value, encoding style parameter isbnparam = new parameter("username", string.class, user, null); soapparams.addelement(isbnparam); soapcall.setparams(soapparams); try { // invoke the remote method on the object response soapresponse = soapcall.invoke(url,""); // check to see if there is an error, return "n/a" if (soapresponse.generatedfault()) { fault fault = soapresponse.getfault(); string f = fault.getfaultstring(); return f; } else { // read result parameter soapresult = soapresponse.getreturnvalue (); // get a string from the result return soapresult.getvalue().tostring(); } } catch (soapexception se) { return se.getmessage(); } }}
3,使用wsdl2java把wsdl文件轉成本地類,然後像本地類一樣使用,即可。

⑤ WEB伺服器的默認埠是什麼

80埠,因為基於HTTP進行通信。

HTTP默認的埠號是25,80,1024,80。

HTTP伺服器,默認的埠號為80/tcp(木馬Executor開放此埠);

HTTPS(securely transferring web pages)伺服器,默認的埠號為443/tcp 443/udp;

Telnet(不安全的文本傳送),默認埠號為23/tcp(木馬Tiny Telnet Server所開放的埠。

(5)web伺服器介面擴展閱讀:

如果根據所提供的服務方式的不同,埠又可分為"TCP協議埠"和"UDP協議埠"兩種。因為計算機之間相互通信一般採用這兩種通信協議。前面所介紹的"連接方式"是一種直接與接收方進行的連接,發送信息以後,可以確認信息是否到達,這種方式大多採用TCP協議;

而另一種則不是直接與接收方進行連接,只管把信息放在網上發出去,而不管信息是否到達,也就是前面所介紹的"無連接方式"。這種方式大多採用UDP協議,IP協議也是一種無連接方式。對應使用以上這兩種通信協議的服務所提供的埠,也就分為"TCP協議埠"和"UDP協議埠"。

⑥ web伺服器的埠有哪些

一個IP地址的埠 可以有65536(即:256×256)個之多!埠是通過埠號來標記的,埠號只有整數,范圍是從0 到65535(256×256-1)。 需要注意的是,埠並不是一一對應的。比如你的電腦作為客戶機訪 問一台WWW伺服器時,WWW伺服器使用「80」埠與你的電腦通信,但你的電腦則可能使用「3457」這樣的埠。 動態埠的范圍是從1024到65535。之所以稱為動態埠,是因為它 一般不固定分配某種服務,而是動態分配。動態分配是指當一個系統進程或應用 程序進程需要網路通信時,它向主機申請一個埠,主機從可用的埠號中分配 一個供它使用。當這個進程關閉時,同時也就釋放了所佔用的埠號。

⑦ 用webservice怎麼做介面

Webservice是系統對外的介面,比如你要從別的網站或伺服器上獲取資源或信息,別人肯定不會把資料庫共享給你,他只能給你提供一個他們寫好的方法來獲取數據,你引用他提供的介面就能使用他寫好的方法,從而達到數據共享的目的。
附件是使用Axis編寫WebService的例子,本例子的WebService提供了兩個方法,分別是sayHello和sayHelloToPerson,第一個只是返回一個"Hello"字元串,沒有參數,第二個函數接受一個字元串作為參數,返回"Hello 參數值",該例子比較簡單,但是清楚的說明了從編寫代碼到發布為WebService以及測試編寫好的WebService全過程。
以下是操作步驟:
1、編寫服務代碼
服務代碼提供了兩個函數,分別為sayHello和sayHelloToPerson,在HelloService.java類中
2、發布WebService
要將上邊寫的HelloService類發布為WebService,需要先搭建Web應用。下面是在Tomcat下使用Axis創建WebService服務的例子。
3、在Tomcat下創建Web應用
在該例子中,在Tomcat下創建了一個context path為test_webservice的WEB應用。
(1) 在Tomcat的webapps下創建如下文件系統
test_webservice
WEB-INF
lib
Classes
(2)在WEB-INF文件夾下創建web.xml文件,在web.xml中主要是配置axis。
4、復制axis相關的jar文件
將axis的相關jar文件復制到WEB-INF\lib文件夾下。這些文件包括:
activation.jar
axis.jar
axis-ant.jar
axis-schema.jar
commons-discovery-0.2.jar
commons-logging-1.0.4.jar
jaxrpc.jar
log4j-1.2.8.jar
mailapi.jar
saaj.jar
wsdl4j-1.5.1.jar
xmlsec-1.3.0.jar
5、測試發布的WEB應用
啟動Tomcat服務,打開IE瀏覽器,訪問http:host:port/test_webservice/services,
如果看到如下界面就說明AXIS部署成功了。
6、發布WebService
發布WebService需要使用現有的AdminService來實現,這里我寫了一個批處理文件來發布WebService,以後如果需要發布其他文件,只需要修改相應的參數就可以了。
(1)創建deploy.wsdd文件。
(2)創建發布WebService服務的批處理文件deploywebservice.bat。
其中E:\workspace\Libwebservice是存放axis對應的jar文件的文件夾,現在將所有的jar文件都加入到此文件夾中。
-l後的參數是本地要發布WebService的AdminService對應的訪問地址。
最後deploy.wsdd是對應的配置文件名稱。
(3) 將deploy.wsdd文件和deploywebservice.bat文件復制到同一個文件夾下,執行deploywebservice.bat批處理文件,就可以將deploy.wsdd中描述的Java類發布為WebService。發布完成之後再訪問http://host:port/test_webservice/services
從上圖可以看出,發布成功後,多了一個HelloServices的服務。這樣就說明HelloService發布成功了。
7、查看HelloServices的wsdl
訪問http://host:port/test_webservice/services/HelloServices?wsdl可以看到wsdl的內容

⑧ 嵌入式web伺服器支持服務介面開發么

僅支持部分。
為了提高對設備的易操作性,很多設備中提供pc機直接通過瀏覽器操作設備的功能。這就需要在設備中實現web伺服器。現在在嵌入式設備中所使用的web伺服器主要有:boa、thttpd、mini_httpd、shttpd、lighttpd、goaheand、appweb和apache等。
現在的嵌入式linux中CGI程序主要使用C語言。對於編寫C語言的CGI程序,可以編寫好程序之後,在linux操作系統下編譯,用針對硬體平台的linux的交叉編譯工具編譯就可以,寫的html網頁界面在記事本寫即可。我以前寫的CGI程序就是在此環境下寫的。這也是最普遍的開發方法。

⑨ 兩台web伺服器能否用一個物理介面

這樣啊,一台伺服器通過地址轉發可以實現(nat),但是你說的兩台同時用80埠有點難哦
因為你的伺服器只有一個80埠,而你的路由器也一樣,只有一個80埠。
如果外網同時訪問兩台伺服器,就會有沖突的呀
所以建議一台用80 一台用8080 或者其他的的埠。
通過地址轉發,外網的只要訪問你們的公網地址(就是電信,網通或者其他運營商分配給你們上網的ip地址)就可以訪問到你們的web伺服器了。
另外,你用的H3C ER 3100是支持花生殼的,最好是申請兩個免費的域名就更完美了!

至於你說的路由協議是動態協議還是靜態協議
反正不管是rip1 rip2 ospf還是靜態路由,他們都只是一個定址轉發的東西,如果要做策略路由,就要配合acl來做了!
比如說外網要訪問你的web伺服器1,如果你做的是轉發所有埠,那麼就很危險。但是HTTP只用80 埠就好了呀。所以只要轉發你得80埠就ok了。

而你用的ER3100就可以滿足你的要求了啊!

⑩ Windows Server中Web伺服器默認埠是

HTTP默認的埠號是25,80,1024,80。
HTTP伺服器,默認的埠號為80/tcp(木馬Executor開放此埠);
HTTPS(securely transferring web pages)伺服器,默認的埠號為443/tcp 443/udp;
Telnet(不安全的文本傳送),默認埠號為23/tcp(木馬Tiny Telnet Server所開放的埠。