之前寫過使用ajax向後台介面發起http請求,這是前端向後台獲取資料的一種方式。另外有從後台向介面發起http請求的方式,應用的也是比較多的。簡單的說就是某個業務可能需要多個伺服器互動才能完成的場景。
比如有a,b,c和d這4臺伺服器,現在a和b有乙個業務需要對接,並涉及到線上支付的服務,但a和b沒有線上支付業務。這裡d伺服器完成了線上支付的業務功能(假設就是支付寶)並與c伺服器長時間合作了。只要c伺服器得到d伺服器的授權,那麼c伺服器就可以接入其他的需要線上支付功能的客戶資源。相對的,接入c伺服器的**也會比d伺服器便宜。接下來就是a,b,c3臺伺服器對接了。流程應該是這樣。a這裡可以是乙個ajax向自己的後台介面發起請求,也可以是乙個表單提交
業務背景大概就是這樣,現在著手去簡單的實現這樣乙個流程,有些資訊會記錄到磁碟中,檔案寫入相關的資料在筆者的其他部落格有相關介紹
(1)開啟2個visual stdio,建立2個webform站點
(2)乙個站點新建乙個aspx程式,這是客戶端,**如下
webform1.aspx**如下
webform1.aspx.cs**如下
public partial class webform1 : system.web.ui.page
";//組織請求資料
byte bytepostdata = encoding.getencoding("utf-8").getbytes(postdata);
//寫入請求資料
stream requeststream = request.getrequeststream();
requeststream.write(bytepostdata, 0, bytepostdata.length);
requeststream.close();
//獲取響應資料
// 以字元流的方式讀取http響應
stream stream = rsp.getresponsestream();
streamreader streamreader = new streamreader(stream);
stringbuilder result = new stringbuilder();
int ch = -1;
while ((ch = streamreader.read()) > -1)
}label.text = result.tostring();
//將響應資訊寫入磁碟
接下來檢視存到硬碟上的請求資訊和響應資訊
c 後台直接發起http請求
操作方法 建立get方式的http請求 請求的url 請求的超時時間 請求的客戶端瀏覽器資訊,可以為空 隨同http請求傳送的cookie資訊,如果不需要身份驗證可以為空 將response轉換成文字 region get post請求引數模型 get請求引數模型 超時時間 public int?t...
C 發起HTTP請求
瀏覽器能看到的資料 用後端模擬請求都能獲取到 如果拿不到 看看是不是請求引數 沒設定 剛好伺服器檢查了這個引數 建立請求物件 request.method post 請求方式 request.keepalive true request.contenttype 請求頭引數 byte bytes sy...
nginx發起http請求
可以用proxypass 配置檔案如下 worker processes 2 nginx worker 數量 error log logs error.log 指定錯誤日誌檔案路徑 配置了乙個81埠的上游伺服器,並在 test下用capture做了乙個子查詢,最後返回md5值 curl v x ge...