Heim >Java >javaLernprogramm >Java implementiert eine domänenübergreifende Anforderung und Datenübertragung von Formulardaten

Java implementiert eine domänenübergreifende Anforderung und Datenübertragung von Formulardaten

WBOY
WBOYOriginal
2023-08-08 09:51:281402Durchsuche

Java implementiert eine domänenübergreifende Anforderung und Datenübertragung von Formulardaten

Java implementiert domänenübergreifende Anfragen und die Datenübertragung von Formulardaten.

In der modernen Webentwicklung sind domänenübergreifende Anfragen ein häufiges Problem, insbesondere wenn wir Java zur Verarbeitung von Formulardaten verwenden. In diesem Artikel wird erläutert, wie Sie mithilfe von Java domänenübergreifende Anforderungen und die Datenübertragung von Formulardaten implementieren, um dieses Problem zu lösen, und relevante Codebeispiele bereitstellen.

1. Was ist eine domänenübergreifende Anfrage? Eine domänenübergreifende Anfrage bezieht sich auf das Anfordern von Ressourcen unter einem anderen Domänennamen von einer Webseite unter einem Domänennamen, und die standardmäßige Same-Origin-Richtlinie des Browsers verbietet solche domänenübergreifenden Anfragen. Die Same-Origin-Richtlinie wurde zum Schutz der Privatsphäre der Benutzer und der Website-Sicherheit eingeführt. In einigen Szenarien müssen wir jedoch domänenübergreifende Anforderungen implementieren, z. B. die separate Entwicklung von Front-End und Back-End, und unterschiedliche Domänennamen und Ports verwenden für die Frontend-Entwicklung.

2. Möglichkeiten zur Lösung domänenübergreifender Anfragen

In Java gibt es viele Möglichkeiten, das Problem domänenübergreifender Anfragen zu lösen.

    JSONP
  1. JSONP ist eine domänenübergreifende Anfrage, die die Funktion des <script>-Tags verwendet, um Ressourcen domänenübergreifend zu laden. Auf der Serverseite müssen wir die zurückgegebenen Daten in einen Funktionsaufruf einbinden und die Funktion dann als Parameter an den Aufrufer übergeben. Der Aufrufer kann die zurückgegebenen Daten erhalten, indem er eine globale Rückruffunktion definiert. <br></script>
Das Folgende ist ein Beispielcode, der JSONP verwendet, um domänenübergreifende Anforderungen zu implementieren. Angenommen, die Schnittstellenadresse des Servers lautet http://server.com/api und der Domänenname der Front-End-Seite lautet http://client.com.

// 前端代码
function processData(data) {
  // 处理返回的数据
}

var script = document.createElement('script');
script.src = 'http://server.com/api?callback=processData';
document.head.appendChild(script);

// 服务端代码
String callback = request.getParameter("callback");
String data = "{"name": "Alice", "age": 20}";
String result = callback + "(" + data + ")";
response.getWriter().write(result);

    CORS
  1. CORS ist die Abkürzung für Cross-Origin Resource Sharing. Es handelt sich um eine domänenübergreifende Anforderungsmethode, die durch das Setzen von Antwortheadern auf der Serverseite implementiert wird. Auf der Serverseite müssen wir Access-Control-Allow-Origin und andere zugehörige Antwortheader festlegen, um bestimmten Domänennamen die Möglichkeit zu geben, domänenübergreifende Anforderungen zu stellen.
Das Folgende ist ein Beispielcode, der CORS verwendet, um domänenübergreifende Anforderungen zu implementieren. Angenommen, der Domänenname der Front-End-Seite lautet http://client.com und die Schnittstellenadresse des Servers lautet http://server.com/api.

// 前端代码
var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://server.com/api');
xhr.onreadystatechange = function () {
  if (xhr.readyState === XMLHttpRequest.DONE) {
    if (xhr.status === 200) {
      var data = JSON.parse(xhr.responseText);
      // 处理返回的数据
    }
  }
};
xhr.send();

// 服务端代码
response.setHeader("Access-Control-Allow-Origin", "http://client.com");
String data = "{"name": "Alice", "age": 20}";
response.getWriter().write(data);

3. Zusammenfassung

Im Folgenden erfahren Sie, wie Sie mit Java domänenübergreifende Anforderungen und die Datenübertragung von Formulardaten implementieren. Wir können die geeignete Methode zur Lösung des Problems domänenübergreifender Anforderungen basierend auf bestimmten Szenarien und Anforderungen auswählen. Ob JSONP oder CORS, es handelt sich um gängige und effektive Lösungen.

Ich hoffe, dieser Artikel ist hilfreich für Sie. Wenn Sie Fragen haben, können Sie gerne eine Nachricht hinterlassen. Danke fürs Lesen!

Das obige ist der detaillierte Inhalt vonJava implementiert eine domänenübergreifende Anforderung und Datenübertragung von Formulardaten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn