導航:首頁 > 編程語言 > javahttp客戶端

javahttp客戶端

發布時間:2023-02-12 11:51:32

A. java http可以websocket不行

解決方案如下:
因為HTTPS是基於SSL依靠證書來驗證伺服器的身份,並為瀏覽器和伺服器之間的通信加密,所以在HTTPS站點調用某些非SSL驗證的資源時瀏覽器可能會阻止。
方案一:假設HTTPS站點使用Nginx伺服器,其他伺服器也是類似的思路,可以用伺服器代理ws服務,可以用nginx的WebSocket proxying。
這樣客戶端請求的是wss://伺服器,通過nginx的WebSocket proxying代理到實際不支持ssl的websocket伺服器。
方案二:直接為WebSocket伺服器增加ssl證書,這樣就可以直接通過wss://來請求伺服器了,以swoole為例,其他伺服器也是類似的思路。

B. 如何使用java實現基於Http協議的大文件傳輸

雖然在JDK的java.net包中已經提供了訪問HTTP協議的基本功能,但是對於大部分應用程序來說,JDK庫本身提供的功能還不夠豐富和靈活。HttpClient是ApacheJakartaCommon下的子項目,用來提供高效的、最新的、功能豐富的支持HTTP協議的客戶端編程工具包,並且它支持HTTP協議最新的版本和建議。以下是簡單的post例子:Stringurl="bbslogin2.php";PostMethodpostMethod=newPostMethod(url);//填入各個表單域的值NameValuePair[]data={newNameValuePair("id","youUserName"),newNameValuePair("passwd","yourPwd")};//將表單的值放入postMethod中postMethod.setRequestBody(data);//執行postMethodintstatusCode=httpClient.executeMethod(postMethod);//HttpClient對於要求接受後繼服務的請求,象POST和PUT等不能自動處理轉發//301或者302if(statusCode==HttpStatus.SC_MOVED_PERMANENTLY||statusCode==HttpStatus.SC_MOVED_TEMPORARILY){//從頭中取出轉向的地址HeaderlocationHeader=postMethod.getResponseHeader("location");Stringlocation=null;if(locationHeader!=null){location=locationHeader.getValue();System.out.println("Thepagewasredirectedto:"+location);}else{System.err.println("Locationfieldvalueisnull.");}return;}詳情見:/developerworks/cn/opensource/os-httpclient/

C. java http 客戶端有哪些

1、Apache httpcomponents-client
2、Apache commons-httpclient
3、Apache HttpAsyncClient

D. Java客戶端通過Http發送POST請求上傳文件

要按http的multi-part上傳的。接收端,再按multi-part解析成文件流

E. 客戶端(C#)通過HTTP協議怎麼向伺服器端(java)傳送文件(常用的是圖片) ,伺服器端又怎麼解析

private string PostWebRequest(string postUrl, string paramData, Encoding dataEncode)
{
string ret = string.Empty;
try
{
byte[] byteArray = dataEncode.GetBytes(paramData); //轉化
HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(new Uri(postUrl));
webReq.Method = "POST";
webReq.ContentType = "application/x-www-form-urlencoded";

webReq.ContentLength = byteArray.Length;
Stream newStream = webReq.GetRequestStream();
newStream.Write(byteArray, 0, byteArray.Length);//寫入參數
newStream.Close();
HttpWebResponse response = (HttpWebResponse)webReq.GetResponse();
StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.Default);
ret = sr.ReadToEnd();
sr.Close();
response.Close();
newStream.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return ret;
}

F. 請教http摘要認證客戶端的Java實現

HttpURLConnection hc = null;
try
{
hc = (HttpURLConnection) new URL(url).openConnection();
hc.setConnectTimeout(10000);
hc.setReadTimeout(10000);
hc.setDoInput(true);
hc.setDoOutput(true);
hc.setUseCaches(false);

String content = param;
DataOutputStream out = new DataOutputStream(hc.getOutputStream());

out.writeBytes(content);
out.flush();
out.close();
//從hc中取出sessionId
for (int i = 1; (key = hc.getHeaderFieldKey(i)) != null; i++)
{
if (key.equalsIgnoreCase("Set-Cookie"))
{
sessionId = hc.getHeaderField(key);
sessionId = sessionId.substring(0, sessionId.indexOf(";"));
break;
}
}
BufferedReader reader = new BufferedReader(
new InputStreamReader(hc.getInputStream()));
String lines;
while ((lines = reader.readLine()) != null)
{
break;
}

reader.close();
catch (Exception e)
{
//
//e.printStackTrace();
return false;
}
finally
{
// 斷開連接
hc.disconnect();
}

閱讀全文

與javahttp客戶端相關的資料

熱點內容
安卓怎麼測量開機電壓 瀏覽:775
程序員素質大全 瀏覽:953
激戰伺服器不見了怎麼辦 瀏覽:983
安卓如何退回初始系統 瀏覽:952
用什麼手錶能代替app 瀏覽:707
女程序員熬夜體檢 瀏覽:717
解壓故事校園戀愛又煩惱 瀏覽:557
冰箱壓縮機放多久能啟動 瀏覽:173
軟體演算法發明專利 瀏覽:988
旁氏演算法 瀏覽:767
程序員那麼可愛電視劇免費觀看極速版 瀏覽:749
程序員那麼可愛陸漓孩子保住了嗎 瀏覽:566
如何獲取伺服器dns秒解 瀏覽:665
如何破解大黃蜂的加密文件 瀏覽:13
新概念英語第三冊pdf 瀏覽:403
分項詳細估演算法步驟 瀏覽:438
ipad桌面文件夾放大 瀏覽:893
我的世界基岩版怎麼進國際伺服器 瀏覽:518
福州醫院有沒有解壓艙 瀏覽:472
帶pwm的51單片機 瀏覽:918