嗨,我一直在尝试对JSP页面进行Ajax调用。这是JS函数。

<script>
$(function(){

  function myAjaxCall() {
     $.ajax({
        type: "post",
        url: "jsp/common/myJavascriptPage.jsp",
        dataType: "text",
        success:
            function (result) {
               alert("Got the result: " + result);
            },
            error: function (xhr,status,error) {
               alert("Status: " + status);
               alert("Error: " + error);
               alert("xhr: " + xhr.readyState);
            },
            statusCode: {
               404: function() {
                   alert("page not found");
               }
            }
        });
   }
 });
 </script>

即使提到的URL中存在JSP,我也一直在找不到文件。请注意,我正在计算相对于webapp目录的JSP文件位置。

我尝试使用普通的AJAX调用(没有jQuery),但最终出现相同的错误。

您能帮我理解为什么无法找到jsp吗?

最佳答案



这就是你要去的地方。

AJAX是从客户端的Web浏览器执行的,这意味着它与服务器上的任何内容都不相关。

如果要在Web浏览器中访问该页面,您将去哪里?

那就是您希望您的请求URL所在的位置。

编辑:我显然没有足够好地解释这一点,所以还有另一件事!

假设我的服务器上有一个文件,其存储方式如下:
my_website/src/webapp/jsp/common/myFile.jsp
如果我想通过可公开访问的URL访问此资源,则该资源将与上面的文件路径不同。可能类似于common/myFile.jsp甚至common/myFile

如果是这种情况,那么我必须使用可公开访问的URL进行AJAX请求,然后才能发送到该URL。

09-10 11:09
查看更多