Javascript XWiki请求处理(如果可能,不使用表单)
在XWiki上处理请求是否可以采用其他方式,而不仅仅是提交HTML表单?我需要使用XMLHttpRequest,但是Javascript XWiki请求处理(如果可能,不使用表单),javascript,xmlhttprequest,request,xwiki,Javascript,Xmlhttprequest,Request,Xwiki,在XWiki上处理请求是否可以采用其他方式,而不仅仅是提交HTML表单?我需要使用XMLHttpRequest,但是$request 根本不响应请求 JavaScript代码 函数请求句柄(msg,subc){ var recipientName=recipientsArr.pop()[0]; req=新的XMLHttpRequest(); req.onreadystatechange=函数(){ 如果(req.readyState==4){ 如果(请求状态==200){ console.log
$request
根本不响应请求
JavaScript代码
函数请求句柄(msg,subc){
var recipientName=recipientsArr.pop()[0];
req=新的XMLHttpRequest();
req.onreadystatechange=函数(){
如果(req.readyState==4){
如果(请求状态==200){
console.log('req-ok');
var mailStatusTmp=“”+接收方名称+”;
$('mailStatusWrapper').append(mailStatusTmp);
如果(收件人R.length>0){
requestHandle(msg,subc);//为下一个收件人调用requestHandle()
}否则{
返回;
}
}否则{
console.log('req err');
var mailStatusTmp=“”+接收方名称+”;
$('mailStatusWrapper').append(mailStatusTmp);
如果(收件人R.length>0){
requestHandle(msg,subc);//为下一个收件人调用requestHandle()
}否则{
返回;
}
}
}
};
请求打开(“POST”https://wiki.intra.tieto.com/xwiki/bin/view/Sandbox/TestPage1“,对);
请求发送(“msg=“+msg+”&subc=“+subc+”&recipientName=“+recipientName”);
}
我想使用XMLHttpRequest,因为页面将向多个接收者发送数据,我需要检查每个请求的状态。如果发出请求的页面与XWiki实例不在同一域中,那么您可能必须配置目标域以接受请求。对于XWiki来说,这并不容易,因为没有响应
选项
请求的机制,但是如果您使用的是前端,例如或,或者在servlet容器的配置中,例如在或中,则很容易进行配置。XWiki enterprise(带安装程序)似乎与jetty一起提供,我应该在jetty\contexts\下修改web.xml以允许跨源请求,还是在xwiki\web-INF下修改web.xml,以及…我应该如何修改?
function requestHandle(msg, subj) {
var recipientName = recipientsArr.pop()[0];
req = new XMLHttpRequest();
req.onreadystatechange = function() {
if (req.readyState == 4) {
if (req.status == 200) {
console.log('req ok');
var mailStatusTmp = "<div class=\"mailStatus\">" + recipientName + " <span class=\"glyphicon glyphicon-ok\"/></div>";
$('#mailStatusWrapper').append(mailStatusTmp);
if (recipientsArr.length > 0) {
requestHandle(msg, subj); // call requestHandle() for next recipient
} else {
return;
}
} else {
console.log('req err');
var mailStatusTmp = "<div class=\"mailStatus\">" + recipientName + " <span class=\"glyphicon glyphicon-remove\"/></div>";
$('#mailStatusWrapper').append(mailStatusTmp);
if (recipientsArr.length > 0) {
requestHandle(msg, subj); // call requestHandle() for next recipient
} else {
return;
}
}
}
};
req.open("POST", "https://wiki.intra.tieto.com/xwiki/bin/view/Sandbox/TestPage1", true);
req.send("msg=" + msg + "&subj=" + subj + "&recipientName=" + recipientName);
}