我正在使用 JSR 286 portlet 并使用 serveResource() 方法来实现 AJAX 调用。在我的本地主机服务器中实现工作正常。但是一旦部署在应用服务器上就不起作用了。下面给出的是架构。
下面给出的是来自客户端的代码:
$.ajax({
url : '<portlet:resourceURL/>',
dataType: "xml",
data : {ssousername: user, passwordsrv : pass, ipRandomValue : ip, deviceTypeHidden : browserStringVar},
cache : false,
type : 'POST',
withCredentials:true,
crossDomain:true,
success : function(xml) {
// Success Logic
},
error : function (jqXHR, textStatus, errorThrown) {
console.log('Error Occurred' + errorThrown);
// Failure logic
}
});
在应用程序服务器上,它给出了禁止的 403 错误。我认为必须在 OHS (apache 2) 上进行一些配置。我在 OHS 中尝试了以下配置,但没有成功。
Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT"
Header always set Access-Control-Max-Age "1000"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"