[英]problem with '/' in the REST URL parameters for an Ajax call
var url = relativeURI+'/rest/PPS/Prod/'+encodeURIComponent(prod)+'/Section/'+encodeURIComponent(section);
$j.ajax({
url: url,
type: 'POST',
error: function(){
alert('Error');
},
success: function(){
alert('ItWorks');
}
});
}
在此ajax调用中,如果我在prod或sec参数中包含“ /”,则将出现错误。 该请求甚至没有到达服务器。 我在参数上使用encodeURIComponent。 对于其他没有'/'的参数,它也可以正常工作。 请帮忙。
我复制了您的逻辑,请求确实到达了服务器。 但是,如果服务器不喜欢该URL,那么您的服务器端代码甚至都不会被调用。 (在我的情况下,没有服务器端代码,但是我可以看到404响应,并且可以看到服务器-Apache-解码了URL)。
因此,也许您的服务器无法解码URL。 您确定在尝试非jquery路由时对它进行了编码吗? 您可能不需要encodeURIComponent
调用。 如果删除它们会怎样?
我已经对参数进行了编码,并尝试了在非jQuery路由上正常运行的方法(正在使用RESTEasy)。 当我删除斜杠时,我得到404响应,这意味着该URI没有REST方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.