使用JQuery / JavaScript在远程计算机上调用Web服务而不更改Web服务

时间:2015-06-02 05:43:37

标签: javascript jquery web-services

我的服务器上运行了一个web服务,但我没有修改它的代码,我只能在其配置文件中进行更改。

我需要从JQuery / JavaScript调用这个web服务。

这是我到目前为止所尝试的

<script>
    $(document).ready(function () {
        debugger;
        jQuery.support.cors = true;
        $.ajax({
            type: "GET",
            contenttype: "application/json; charset=utf-8",
            data: "{null}",
            url: "http://example.com:1032/service1.asmx/HelloWorld",
            dataTyp: "json",
            success: function (res) {
                debugger;
                $("#Text1").val(res.text);
            },
            error: function (err) {
                debugger;
                alert(err);
            }
        });
    });
</script>

但没有成功,它会出错。 我还在其他计算机的浏览器http://example.com:1032/service1.asmx/HelloWorld中尝试了此网址,但它显示The test form is only available for requests from the local machine.

我已经解决了相关问题,但他们需要更改网络服务。

无论如何,我可以在不更改网络服务代码的情况下致电服务吗?

编辑:错误我进入jquery

err = Object {readyState: 4, responseText: "<html>
↵ <head>
↵ <title>Runtime Error</…le>
↵
↵ <br>
↵
↵ </body>
↵</html>
↵", status: 500, statusText: "Internal Server Error"}

编辑:只是添加,我可以在其他机器上运行的C#ASP.Net网站上调用此服务方法

1 个答案:

答案 0 :(得分:0)

哇,将此添加到我的配置为我工作

<configuration>
    <system.web>
     <webServices>
        <protocols>
            <add name="HttpGet"/>
            <add name="HttpPost"/>
        </protocols>
    </webServices>
    </system.web>
</configuration>

我现在可以通过上述方法从远程机器

调用浏览器和jquery的服务