『壹』 如何給http伺服器發送post請求
1、HTTP請求概述
在前面有一篇文章對HTTP協議有詳細的描述,這里就不再過多的做說明,只是簡單的作為這篇文章的引子。
HTTP協議又被稱為超文本傳輸協議,它的的設計目的是保證客戶機與伺服器之間的通信。HTTP 的工作方式是客戶端與伺服器之間的請求-應答協議。在客戶端和伺服器之間進行請求-響應時,有兩個最基本的請求方式:GET 和 POST。
其中,GET請求表示從指定的資源請求數據,POST請求表示向指定的資源提交要被處理的數據。
2、HTTP請求格式
在HTTP請求中,首先是請求行,注意這里的請求行一定要放在最前面;其次,是請求頭,英文表示為header;然後會空一行,緊接著就可以是請求的具體內容了,一般稱之為請求體,request-body。給出一個圖示如下:
3、GET請求與POST請求對比
GET請求與POST請求有一些異同點,主要有以下幾點問題:
(1)、GET請求和POST請求都是客戶端與伺服器之間交互,請求--應答模式的協議
(2)、GET請求是通過URL直接請求數據,數據信息可以在URL中直接看到,比如瀏覽器訪問;而POST請求是放在請求頭中的,我們是無法直接看到的;
(3)、GET提交有數據大小的限制,一般是不超過1024個位元組,而這種說法也不完全准確,HTTP協議並沒有設定URL位元組長度的上限,而是瀏
覽器做了些處理,所以長度依據瀏覽器的不同有所不同;POST請求在HTTP協議中也沒有做說明,一般來說是沒有設置限制的,但是實際上瀏覽器也有默認
值。總體來說,少量的數據使用GET,大量的數據使用POST。
(4)、GET請求因為數據參數是暴露在URL中的,所以安全性比較低,比如密碼是不能暴露的,就不能使用GET請求;POST請求中,請求參數信息是放在請求頭的,所以安全性較高,可以使用。在實際中,涉及到登錄操作的時候,盡量使用HTTPS請求,安全性更好。
下面給出一副圖示,說明一下HTTP中GET與POST請求的差異:
4、使用步驟:
在Android中使用HTTP請求,主要步驟如下:
(1)、實例化一個HttpGet(或HttpPost)對象,將請求的URL地址通過構造方法傳給HttpGet(或HttpPost)對象;
(2)、使用DefaultHttpClient類的execute方法發送GET或POST 請求,並返回HttpResponse對象;
(3)、通過HttpResponse介面的getEntity方法返回響應信息。
5、實例代碼
給出一個在實際應用中的一個POST請求的代碼片段:
[java] view plain print?
params = new LinkedList();
params.add(new BasicNameValuePair("param1", "Post方法"));
params.add(new BasicNameValuePair("param2", "第二個參數"));
try {
HttpPost post = new HttpPost(baseUrl);
post.setEntity(new UrlEncodedFormEntity(params, "utf-8")); //將參數填入POST Entity中
HttpResponse response = httpClient.execute(post); //執行POST方法
resCode = response.getStatusLine().getStatusCode()); //獲取響應碼
result = EntityUtils.toString(response.getEntity(), "utf-8")); //獲取響應內容
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
6、HTTP請求狀態碼意義
HTTP請求中,主要有這樣幾個類型:1XX:表示信息提示,2XX:表示成功,3XX:表示重定向,4XX:表示客戶端請求錯誤,5XX:表示伺服器錯誤。常見的幾個HTTP請求狀態碼意義如下:
200 OK: 找到了該資源,並且一切正常。
304 NOT MODIFIED: 該資源在上次請求之後沒有任何修改。這通常用於瀏覽器的緩存機制。
401 UNAUTHORIZED: 客戶端無權訪問該資源。這通常會使得瀏覽器要求用戶輸入用戶名和密碼,以登錄到伺服器。
403 FORBIDDEN: 客戶端未能獲得授權。這通常是在401之後輸入了不正確的用戶名或密碼。
404 NOT FOUND: 在指定的位置不存在所申請的資源。
505 NOT SUPPORTED:伺服器不支持請求中所指明的HTTP版本
『貳』 如何獲取一個程序向伺服器發送的數據
利用抓包程序,首先斷掉網路,關掉所有其他連接網路的程序,例如瀏覽器,QQ啊什麽的。開啟抓包程序,然後連接網路。打開你想要看的程序,然後等待程序發送數據。稍後就看到有數據包發送出來。然後找對應伺服器,找對應的數據包。然後解析數據包。就可以看到了。但是解析數據包比較麻煩,一般數據包都會經過加密。需要解密,才可以看到數據包的明文。
『叄』 如何使用javascript向伺服器提交數據
使用ajax對象 非同步請求伺服器
例如:(如下代碼使用了jquery)
$.ajax({
type:"post",
url:basePath+"notebook/findSpecial.do",//伺服器請求地址
dataType:"json",//伺服器返回的數據類型
data:{},//發送到伺服器的參數(Json形式)
success:function(result){},//請求成功後,接受伺服器傳來的Json字元串,並做相應的處理
error:function(xhr,status,error){alert("請求失敗.");}
});
『肆』 如何用伺服器發送數據包
你好!
你說的這個是DDOS攻擊,就是用多個Pc向目標Pc發送大量無效數據包,目標Pc接收到這些數據包會回應,而這些數據包都是一些沒有具體鏈接的數據包,而目標Pc卻一直等待著對方的回應,從而佔用目標Pc大量的內存和接入網帶寬,造成嚴重的網路擁堵甚至伺服器宕機(掉線,死機)如何實現你只有找別人了,這個問題很嚴重!
『伍』 如何向伺服器發送json數據
版權聲明:本文為博主原創文章,未經博主允許不得轉載。
Ajax中可以使用xml作為參數發送給伺服器,除了XML還可以使用JSON(http://www.json.org/json-zh.html)
XML的一個替代方法是JSON,JSON是一種文本格式,它獨立於具體語言,JSON建立在以下兩種數據結構基礎上:
名/值對集合,在不同的語言中,被實現為一個對象、記錄、結構或字典
值的有序表,在大部分語言中,實現為數組
JSON可以做為異構系統之間的一種數據互換格式。
JSON對象是名/值對的無序集合({},使用「:」分隔),JSON數組是一個有序的值集合([],使用「,」分隔)
如下就是一個JSON格式的數據:
var employee = {
「firstName」 : John
, 「lastName」 : Do
『陸』 如何將數據上傳給伺服器
醫囑以什麼形式發送過來?
辦法有很多,最簡單的,就是在自己機器里,建立抄2個資料庫A,B,假如A是外部伺服器。
在資料庫中,以A資料庫做發布,讓B資料庫訂閱,弄好以後,A資料庫的數據就會自動的傳送到B資料庫。具體的,你要看SQL
SERVER的文檔關於發布訂閱的那部分,如果細節有不懂得,你可以給我留言,我在給你解答。
在說一個方法,使用程序將A中的數據,直接插入到B資料庫。
在程序里建立兩個數據源,一個訪問A資料庫一個訪問B資料庫,然後,通過A數據源讀取數據,插入到B數據源對應的資料庫中。
『柒』 java 伺服器怎樣給客戶端傳輸數據
java需要利用scoket實現網路通信,在通信時可以利用是從客廳、獲取輸入輸出流達到傳輸數據效果
『捌』 我要給某個伺服器發送數據包,該怎樣操作格式是怎樣的
"ping xxx.xxx.xxx.xxx"
也可以ping域名,比如"ping www..com"
下面幾個擴展參數,可以用。
ping IP -t--連續對IP地址執行Ping命令,直到被用戶以Ctrl+C中斷。
ping IP -l 2000--指定Ping命令中的數據長度為2000位元組,而不是預設的32位元組。
ping IP -n--執行特定次數的Ping命令
『玖』 數據傳送給伺服器的方法
你問的問題太過於簡單,如果伺服器是文件伺服器,可以通過FTP或著UNC路徑穿過去,如果在遠程的話,也可以採用VPN技術(虛擬專用網路)通過加密隧道直接訪問到伺服器上來,你也可以通過C/S遠程客戶端軟體來進行訪問,例如:pcanywhere軟體,只要在伺服器端安裝訪問端,在客戶端安裝客戶端軟體就OK了.
『拾』 如何從雲伺服器上往本地發送數據
你本地的資料庫是在運行的吧,這個就最方便的。
你直接在本地打開 SQL Server Management Studio (mssql客戶端)同時連接本地及遠程資料庫。
選擇本地要同步的資料庫,任務--導出數據。。。然後直接就導入了遠程的資料庫了。
當然也可以生成sql腳本,然後再執行都 行。