利用JQuery和Servlet實作跨網域提交請求範例分享_jquery
原理:JavaScript的Ajax不可以跨域,但是可以透過向本地的一個Servlet發出請求,由Servlet完成跨域。再把遠端的結構回傳給客戶端。這樣Ajax就可以跨域了。後面,再發一個PHP版的,請大家注意啊。下面是程式碼
JS代碼:
注意:在Post方式時,param1和param2為向遠端發送的參數值,可以有多個。
//GET方式 var url = "http://www.baidu.com";//遠端請求位址
var param = {'requesturl':url,'typedata':'JSON'};
var data = getCrossDomainProxyRemote(param,"json");
}
//Post方式
function reqeustCrossDomainProxyPost(param1,param2){
> var param = {'requesturl':url,'typedata':'JSON','param1':param1,'param2':param2};
var data = getCrossDomainProxyRemote(param,"json"); }
/**
* JS向本址的一個Servlet發送POST請求,所有關於遠端請求的參數。 * 在此處參POST方式發送給Servlet
* @param param 遠端請求參數
* @param rtype JS回傳類型(暫時沒有用到)
* @return
*/
function getCrossDomainProxyRemote(param,rtype){
var url = "/cross/proxy";//Servlet的URL位址
位址$.ajax({
url: url,type: 'POST',dataType: rtype,timeout: 40000,data:param,async:false,
status);},
success: function(data){returndata=data;}
});
return returndata;
});
return returndata;Java程式碼:
複製程式碼
public class CorssDomainProxy extends HttpServlet {
public void doGet(HttpServletRequest req, Http@ IOException {
this.doPost(req, resp);
}
public void doPost(HttpServletRequest req, HttpServletResponse resp)
boolean requestType = false;//標記遠端請求類型,預設為GET方式
PrintWriter out = resp.getWriter();
Enumeration keys = req.getParameterNames();//取出客戶端傳入的所有參數名稱
String url=null;
while (keys.hasMoreElements()){
🎝>*/
if(key. equals("requesturl")){//判斷參數是否為,遠端請求位址
url = req.getParameter(key);
url = req.getParameter(key);
url = req.getParameter(key);
}else if(key.equals("returntype")){//// > para.add(key);//其它加入參數列表,此處為參與遠端請求的參數
}
}
HttpClient client = new HttpClient();
HttpMethod 甲基,false:GET
method = new UTF8PostMethod(url);
String _value = req.getParameter(name);
((PostMethod )method).setParameter(name,_value);
}
} }
client.executeMethod(method);//執行請求
String bodystr = method.getResponseBodyAsString();//回傳結果
> */
private static class UTF8PostMethod extends PostMethod {
public UTF8PostMethod(String url) { @Override
public String getRequestCharSet() {
return "UTF-8";
}
}
}

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Servlet生命週期是指servlet從創建到毀滅的整個過程,可分為3個階段:1、初始化階段,呼叫init()方法實作Servlet的初始化工作;2、運行階段(處理請求),容器會為指定請求建立代表HTTP請求的ServletRequest對象和代表HTTP回應的ServletResponse對象,然後將它們作為參數傳遞給Servlet的service()方法;3、銷毀階段。

Servlet全名為“Java Servlet”,中文意思是小服務程序或服務連接器,是運行在網頁伺服器或應用伺服器上的程序,它是作為來自網頁瀏覽器或其他HTTP客戶端的請求和HTTP伺服器上的資料庫或應用程式之間的中間層。 Servlet具有獨立於平台和協定的特性,主要功能在於互動式地瀏覽和產生數據,產生動態Web內容。

JavaServlet中實作分散式會話管理的方法有兩種:1.會話複製:將會話資料複製到各個伺服器。 2.會話分佈:使用集中式儲存服務儲存會話數據,由多個伺服器存取。具體實作方式有:會話複製配置web.xml檔案中的true;會話分佈使用Redis:引入jedis函式庫,編寫Servlet使用Jedis儲存和檢索會話資料;使用SpringSession:引入spring-session依賴,注入SessionRepository,透過它操作會話數據。

JavaServlet可用於:1.動態內容產生;2.資料存取與處理;3.表單處理;4.檔案上傳;5.會話管理;6.篩選器。範例:建立一個FormSubmitServlet來處理表單提交,將name和email作為參數,並重新導向到success.jsp。

JavaWeb開發技術堆疊:掌握JavaEE、Servlet、JSP、Spring等用於Web開發的技術隨著互聯網的快速發展,在當今的軟體開發領域,Web應用的開發已成為非常重要的技術需求。而Java作為一種廣泛應用的程式語言,其在Web開發領域也有著重要的地位。 JavaWeb開發技術堆疊涉及多項技術,如JavaEE、Servlet、JSP、Spr

Servlet容器是提供Servlet運行環境的應用程序,它負責管理Servlet的生命週期、提供必要的WEB服務,如安全性、事務等。 Servlet容器有很多種,其中最常見的是Tomcat和Jetty。 Servlet容器主要功能生命週期管理:Servlet容器負責管理Servlet的生命週期,包括啟動、初始化、服務和銷毀。 Web服務:Servlet容器提供web服務,如安全性、交易等。資源管理:Servlet容器管理資源,如Servlet、jsP、html頁面等。類別載入:Servlet容器負責加

JavaWeb應用程式開發中,Servlet是非常常用的技術。但是在開發過程中難免會出現一些Servlet錯誤,如何解決並避免Servlet錯誤成為許多Java開發者的頭等問題。本文將根據個人經驗和相關資料介紹一些常見的Servlet錯誤及其解決方法。 ClassNotFoundException當我們嘗試載入一個類別的時候,如果該類別不存在或不能被系統訪問,

在JavaWeb開發領域,了解HttpSession介面是建立動態和響應式Web應用程式的關鍵。在本文中,我們將探討HttpSession介面是什麼、它是如何運作的以及為什麼它在Servlet規格中起著至關重要的作用。什麼是HttpSession介面? HttpSession介面的核心是JavaServletAPI的基本元件,它使Web開發人員能夠跨多個HTTP請求追蹤使用者的會話。當使用者第一次存取網路應用程式時,會創建一個唯一的會話來表示他們的互動。此會話允許應用程式在請求之間維護狀態並記住有關
