zoukankan      html  css  js  c++  java
  • 在JavaScript中调用WebService

    JavaScript中调用WebService

    左直拳

    试着在JavaScript中调用了一下WebService。觉得有两个地方要注意。

    1、参数传递。

    一般调用WebService的方法,都要传参数。怎么传?如下:

    WebService部分】

    文件:UserManage/UserInfo.asmx

    方法:

    [WebMethod]

    public string GetUserName(string accounts)

     

    JavaScript部分】

     

    //WebService地址及方法名称。其中GetUserName是要调用的方法

    var URL = "UserManage/UserInfo.asmx/GetUserName";

    var Params = "accounts=leftfist";//传给WebService的参数

    var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");

    xmlhttp.Open("POST",URL, false);//POST方法

    xmlhttp.SetRequestHeader("Content-Type","application/x-www-form-urlencoded");

    xmlhttp.SetRequestHeader ("Content-Length",Params.length);

    xmlhttp.send(Params);

    if( xmlhttp.Status == 200 ){//200代表成功

    var res = xmlhttp.responseXML;//得到WebService传回的结果

    return res.childNodes[1].text + "";

    }

    return xmlhttp.responseText;

     

    2、配置文件(Web.config)问题。

    JavaScript脚本写好以后,在本地上运行并无问题。但上传到服务器却显示:

    Request format is unrecognized for URL unexpectedly ending in '/GetUserName'

    估计是"UserManage/UserInfo.asmx/GetUserName"这种调用WebService的写法服务器还不认,找了很久才知道,应该在Web.config里加上:

        <webServices>

          <protocols>

            <add name="HttpGet"/>

            <add name="HttpPost"/>

          </protocols>

    </webServices>

     
  • 相关阅读:
    Picture Control点击事件
    在C/C++中获取可执行文件的图标和信息
    C++获取系统图标方法
    C++ Vector 使用总结
    C++中vector和list的区别
    STL STD::list使用说明
    演示My97 DatePicker过程中的错误
    HTML5的语法变化
    利用 ACE 来实现 UDP 通讯
    VS2010中“工具>选项中的VC++目录编辑功能已被否决”解决方法
  • 原文地址:https://www.cnblogs.com/leftfist/p/4258316.html
Copyright © 2011-2022 走看看