Java melaksanakan permintaan merentas domain dan penghantaran data data borang
Dalam pembangunan web moden, permintaan merentas domain adalah masalah biasa, terutamanya apabila kami menggunakan Java untuk memproses data borang. Artikel ini akan memperkenalkan cara menggunakan Java untuk melaksanakan permintaan merentas domain dan penghantaran data data borang untuk menyelesaikan masalah ini, dan menyediakan contoh kod yang berkaitan.
1. Apakah itu permintaan merentas domain
Permintaan merentas domain merujuk kepada meminta sumber di bawah nama domain lain daripada halaman web di bawah satu nama domain dan dasar asal yang sama standard penyemak imbas melarang permintaan merentas domain tersebut. Dasar asal yang sama telah diwujudkan untuk melindungi privasi pengguna dan keselamatan tapak web, tetapi dalam beberapa senario, kami perlu melaksanakan permintaan merentas domain, seperti pembangunan bahagian hadapan dan belakang yang berasingan, serta menggunakan nama dan port domain yang berbeza. untuk pembangunan bahagian hadapan.
2. Cara menyelesaikan permintaan merentas domain
Di Java, terdapat banyak cara untuk menyelesaikan masalah permintaan merentas domain Dua cara biasa akan diperkenalkan di bawah.
Berikut ialah kod sampel yang menggunakan JSONP untuk melaksanakan permintaan merentas domain. Andaikan bahawa alamat antara muka pelayan ialah http://server.com/api dan nama domain halaman hadapan ialah 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);
Berikut ialah contoh kod yang menggunakan CORS untuk melaksanakan permintaan merentas domain. Andaikan bahawa nama domain halaman hadapan ialah http://client.com dan alamat antara muka pelayan ialah 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. Ringkasan
Di atas ialah cara menggunakan Java untuk melaksanakan permintaan merentas domain dan penghantaran data data borang. Kita boleh memilih kaedah yang sesuai untuk menyelesaikan masalah permintaan merentas domain berdasarkan senario dan keperluan tertentu. Sama ada menggunakan JSONP atau CORS, ia adalah penyelesaian biasa dan berkesan.
Saya harap artikel ini membantu anda Jika anda mempunyai sebarang pertanyaan, sila tinggalkan mesej. Terima kasih kerana membaca!
Atas ialah kandungan terperinci Java melaksanakan permintaan merentas domain dan penghantaran data data borang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!