无法通过request.getAttribute()获得HTTP请求参数

我正在url使用以下jQuery片段向servlet 发送参数:


$.getJSON("http://localhost:8080/JsoupPrj/JasonGen?url=" + url, function(data) {

    $("#content").html(data);

});

在服务器端,servlet获取参数,为此我编写了如下代码:


String url = (String) request.getAttribute("url");

但这不起作用,您能告诉我我做错了什么吗?我相信我没有正确地将参数传递给servlet。小服务程序每次通过JavaScript触发,但看不到浏览器传递的参数。


牧羊人nacy
浏览 867回答 1
1回答

慕妹3146593

这里,String url = (String) request.getAttribute("url");您正在尝试将请求参数作为请求属性而不是请求参数。这显然不会做您想要的。您需要将请求参数作为请求参数而不是请求属性。String url = request.getParameter("url");与具体问题无关:在发送之前,您似乎根本没有对参数进行URL编码。当url包含特殊字符时,这可能会导致其他与此问题无关的问题。查看JS encodeURIComponent()函数或该函数的data参数$.getJSON()。另请参见以获取更多提示如何使用Servlet和Ajax?
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server