gpt4 book ai didi

java - 使用 HTTPServlet 调用的相对路径

转载 作者:可可西里 更新时间:2023-11-01 17:28:00 26 4
gpt4 key购买 nike

我目前正在开发一个 servlet,它将大量数据返回给给定的 ID。在 URL 下调用

localhost:8080/RTC_W/api?id=123

源代码中没有给出特殊路径。我的 web.xml 将其映射如下:

<servlet-mapping>
<servlet-name>APICaller</servlet-name>
<url-pattern>/api</url-pattern>
</servlet-mapping>

它由一个欢迎文件调用,它看起来像这样(仅相关部分)并提供一个小框来输入 ID:

<body>
RTC W Front End

<form action="/api" method="get">
Work Item ID:<br>
<input type="text" name="id" value=""><br>

<input type="submit" value="Submit">
</form>
</body>

可以看到,form action应该调用servlet所在的路径/api。虽然调用的 URL 是错误的,它总是调用

localhost:8080/api?id=123

所以/RTC_W/丢失了。如果我将它添加到 <form action="RTC_W/api" method="get"> ,这个 URL 被调用:

localhost:8080/RTC_W/RTC_W/api?id=123

所以路径被调用了两次。我做错了什么?

最佳答案

<form action="api" method="get">

这是你应该使用的。

当 URL 以 / 开头时它始终是一个绝对 URL,即紧跟在 <hostname>:<port> 之后

如果 url 不以 / 开头它将附加到当前 URL。

关于java - 使用 HTTPServlet 调用的相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43003744/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com