Ajax SOAP跨域'POST'错误请求400

时间:2015-05-18 09:04:59

标签: ajax soap xmlhttprequest webservice-client bad-request

我被困在soapRequest'下面,我尝试测试我的netbeans连接跨域访问但是继续失败,任何人都可以帮我指出我的错误?

加上,我安装了“允许 - 控制 - 允许 - 来源”#39;在我的谷歌浏览器浏览器上,并尝试浏览海报插件来测试' get'和'发布'是工作。

function submitLogIn(username, passw) {
    var userId = document.getElementById(username).value;
    var userPass = document.getElementById(passw).value;

    var soap1 = '<soap:Envelope ';
    var soap2 = 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ';
    var soap3 = 'xmlns:xsd="http://www.w3.org/2001/XMLSchema" ';
    var soap4 = 'xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> ';
    var soap5 = '<soap:Body> ';
    var soap6 = '<Login xmlns="S2Ed"> ';
    var soap7 = '<userid>' + userId + '</userid> ';
    var soap8 = '<password>' + userPass + '</password> ';
    var soap9 = '</Login>';
    var soap10 = '</soap:Body>';
    var soap11 = '</soap:Envelope>';
    var soapMessage = soap1 + soap2 + soap3 + soap4 + soap5 + soap6 + soap7 + soap8 + soap9 + soap10 + soap11;

    // Call + ing...... 
    CallAjax(soapMessage);
}

function CallAjax(soapMessage) {
    console.log(soapMessage.toString());

    $.support.cors = true;
    $.ajax({
        type: 'POST',
        url: http://localhost:5566/Test.svc,
        // contentType: 'application/soap+xml',
        // content-Type: 'text/plain',
        contentType: 'text/xml; charset=utf-8',
        async: true, 
        dataType: 'xml',
        crossDomain: true,
        // processData: false,
        headers: {
            SOAPAction: 'S2Ed/App/Login'
        },
        data: soapMessage,
        success: function (soapResponse) {
            console.log(soapResponse);
            console.log(soapResponse.toString());
            console.log(soapResponse.toJSON());
            console.log(soapResponse.toXML());
        },
        error: function (soapResponse) {
            alert("Failed SOAP ");
        }
    });
}

以下是错误消息 主线程上的同步XMLHttpRequest由于其对最终用户体验的不利影响而被弃用。如需更多帮助,请查看http://xhr.spec.whatwg.org/。 (15:39:52:688 |警告,弃用)   at public_html / js / jquery-1.11.3.min.js:5

无法加载资源:服务器响应状态为400(错误请求)(15:39:58:281 |错误,网络)   在http://localhost:5566/Test.svc

XMLHttpRequest无法加载http://localhost:5566/Test.svc。无效的HTTP状态代码400(15:39:58:282 |错误,javascript)   在public_html / index.html

1 个答案:

答案 0 :(得分:0)

错误400通常意味着您向服务器提交了一些服务器不喜欢的内容。即在年龄字段等中提交姓名

要添加,您的请求xml可能是错误的。你可以在控制台中打印它,看看它是否是一个有效的xml?