伺服器怎麼應答post數據
㈠ 如何在php socket伺服器中對post進行相應
php的socket直接拿了報文體,本身socket拿到的數據是一段完整的報文,裡面有包含協議與請求方式在內的所有傳輸層的數據,弊端是不能直接調用。你要用php做的話用$_POST走http協議吧
㈡ 已知伺服器的ip和埠,as3.0怎麼向伺服器發送POST數據
首先,socket需要一個客戶端,一個伺服器端。伺服器端對埠進行監聽,客戶端像伺服器端發送連接請求,伺服器端對客戶端進行連接。連接之後就可以發送信息了。
㈢ ajax或jquery如何向伺服器提交post數據並接收伺服器響應的整個頁面
如您確認本介面返回內容均為頁面,建議使用form表單執行,如因動態操作、無關信息太多等不好將相關內容包裹到form里,可以使用隱藏form表單的方式取巧
即額外創建個隱藏form,在執行提交方法里,將收集到的信息以創建可提交元素的方式動態寫入這個form並執行form的submit
ajax如果訪問的是返回頁面的內容,success中的返回值即為html頁面的字元串
㈣ 伺服器如何接受get和post
將tomcathome/conf/lib 中的servlet.jar填加到jdk的classpath中
㈤ 作為服務端,怎麼獲取客戶端通過httppost發送過來的參數
ASP段還是照常,用request.form("xx")的方式接收,關鍵是用Ajax方式提交數據的時候,對傳遞的值進行編碼,和設置文件頭,下面是一個ajax用Post方式提交數據的函數,你參考下:
function Post(){
var name=document.form1.name.value;
var sex=document.form1.sex.value;
var Ajax=createXMLHttps();//---這是創建XMLHttps對象的函數,就不寫了
var url="Ajax_Post.asp";//--接收數據的頁面
var sendData="v_name="+escape(name);//包含中文的值,需要escape進行編碼
sendData+="&sex="+escape(sex);
Ajax.onreadystatechange=function(){
if (4==Ajax.readyState){
//在這里進行你需要的一些操作
}
}
Ajax.open("POST",url,true);
//如果是POST方式提交數據,下兩行必不可少
Ajax.setrequestheader("content-length",sendData.length);
Ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
Ajax.send(sendData);//要POST的數據
}
---------------------
接收數據時,直接使用request.form("name")即可獲得name的值,為防止出錯,也可對獲取到的值再進行反編碼
name=unescape(request.form("name"))'---用unescape函數
㈥ 怎麼用php post 數據到伺服器端,封裝的方法
用PHP向伺服器發送HTTP的POST請求,代碼如下:
<?php/** * 發送post請求 * @param string $url 請求地址 * @param array $post_data post鍵值對數據 * @return string */ function send_post($url, $post_data) { $postdata = http_build_query($post_data); $options = array( 'http' => array( 'method' => 'POST', 'header' => 'Content-type:application/x-www-form-urlencoded', 'content' => $postdata, 'timeout' => 15 * 60 // 超時時間(單位:s) ) ); $context = stream_context_create($options); $result = file_get_contents($url, false, $context); return $result; }
使用的時候直接調用上面定義的send_post方法:
$post_data = array( 'username' => 'username', 'password' => 'password');send_post('網址', $post_data);
㈦ client段通過post發送內容到伺服器,伺服器接收到post的內容,處理完成後,伺服器怎麼講應答返回client。
返回的類型,大概有幾種,文件,頁面,等。還可以返回xml,json數據。
㈧ 如何用php向伺服器發送post請求
用PHP向伺服器發送HTTP的POST請求,代碼如下:
<?php
/**
*發送post請求
*@paramstring$url請求地址
*@paramarray$post_datapost鍵值對數據
*@returnstring
*/
functionsend_post($url,$post_data){
$postdata=http_build_query($post_data);
$options=array(
'http'=>array(
'method'=>'POST',
'header'=>'Content-type:application/x-www-form-urlencoded',
'content'=>$postdata,
'timeout'=>15*60//超時時間(單位:s)
)
);
$context=stream_context_create($options);
$result=file_get_contents($url,false,$context);
return$result;
}
使用的時候直接調用上面定義的send_post方法:
$post_data=array(
'username'=>'username',
'password'=>'password'
);
send_post('網址',$post_data);
㈨ php怎麼處理伺服器發回的post包
至少有兩種方案。
(1)不使用POST,而使用session,將php類代碼處理過的數據存儲在session中,然後header到example.php去取session.(推薦此方法)
(2)人工構造一個POST請求,可以在網路上搜索php模擬POST提交,找到具體的方法。
------------------
問題補充:Session是存放在服務端的,在一次會話中是不會自動銷毀。
我要在這一次傳送結束之後就自動銷毀掉,減輕伺服器壓力。
================
不會自動銷毀,可以手動銷毀的。從session取到內容後,就可以使用unset($_SESSION['變數'])來銷毀。
㈩ 如何給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版本