Можно ли получить ответ с сервера без замены всего содержимого страницы?JAVA

Программисты JAVA общаются здесь
Anonymous
Можно ли получить ответ с сервера без замены всего содержимого страницы?

Сообщение Anonymous »

У меня есть простой запрос GET, где я отправляю запрос на сервер с просьбой о простом сообщении, а затем вставляю это сообщение в тег , например: «Привет, я с сервера». Однако, когда я делаю это, хотя я получаю желаемое сообщение от сервера, я сталкиваюсь с основным побочным эффектом - вся страница перезаписывается ответом. Но когда я получаю сообщение, вместо того, чтобы просто вставить его в тег , вся страница заменяется ответом.
просто положите, я хочу заполнить тег с ответом сервера без переоценки всей страницы. Даже если я делаю это с двумя разными маршрутами, такими как / и сообщение, я все еще не хочу видеть какой -либо из маршрута, содержащий этот простой ответ, а скорее использую его полезным способом. Я надеюсь, что это имеет смысл. < /P>





Default Page


click


const request = new Request("http://localhost:3000/message",{
method:"GET",
headers:{
"Content-Type":"text/plain",
}

})

fetch(request)
.then(function(response){
return response.text();
})
.then(function(response) {
document.querySelector("p").textContent = response;
console.log(response)
})
.catch(function(error){
console.log(`error has occured ${error}`)
})



< /code>
и < /p>
import com.sun.net.httpserver.{HttpServer, HttpHandler, HttpExchange}
import java.io.*
import java.net.InetSocketAddress
import java.nio.file.{Files, Paths}

@main def runServer(): Unit =
val server = HttpServer.create(new InetSocketAddress(3000), 0)

server.createContext(
"/",
new HttpHandler {
override def handle(request: HttpExchange): Unit = {
var filePath = Paths.get(".", "index.html")
if (
request.getRequestURI().getPath().equals("/") && request
.getRequestMethod()
.equals("GET")
) {
var files = Files.readAllBytes(filePath);

request.getResponseHeaders().set("Content-Type", "text/html")
request.sendResponseHeaders(200, files.length);
var os = request.getResponseBody();
os.write(files)
os.close();
} else if (
request.getRequestURI().getPath().equals("/message") && request
.getRequestMethod()
.equals("GET")
) {
var response = "hello from the server";
request.getResponseHeaders().set("Content-Type", "text/plain")
request.sendResponseHeaders(200, response.getBytes().length);

}
}

}
)

server.setExecutor(null)
server.start()
println("🚀 Server is running at http://localhost:3000/")



Подробнее здесь: https://stackoverflow.com/questions/795 ... -whole-pag

Вернуться в «JAVA»