[转]:Javascript+xmlhttp调用Webservice

2023-11-07

原文地址:http://netboy.cnblogs.com/archive/2006/02/18/333260.html

1.  创建webservice,为了免于落俗我稍稍修改了创建webserice的默认webmethod。^_^
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;

[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Service : System.Web.Services.WebService
{
    public Service () {

        //Uncomment the following line if using designed components
        //InitializeComponent();
    }

    [WebMethod]
    public string SayHelloTo(string Name) {
        return "Hello "+Name;
    }
   
}
还是俗了点。:)

2. js调用webservice+xmlhttp的实现部分。

<html>
<title>
Call webservice with javascript and xmlhttp.
</title>
<body>
<script language="javascript">

//Test function with get method.
function RequestByGet(data){

var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
//Webservice location.
var URL="http://localhost:1323/WebSite6/Service.asmx/SayHelloTo?Name=Zach";
xmlhttp.Open("GET",URL, false);
xmlhttp.SetRequestHeader ("Content-Type","text/xml; charset=utf-8");
xmlhttp.SetRequestHeader ("SOAPAction","http://tempuri.org/SayHelloTo");
xmlhttp.Send(data);
var result = xmlhttp.status;
//OK
if(result==200) {
document.write(xmlhttp.responseText);
}
xmlhttp = null;
}

//Test function with post method
function RequestByPost(value)
{
var data;
data = '<?xml version="1.0" encoding="utf-8"?>';
data = data + '<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">';
data = data + '<soap:Body>';
data = data + '<SayHelloTo xmlns="http://tempuri.org/">';
data = data + '<Name>'+value+'</Name>';
data = data + '</SayHelloTo>';
data = data + '</soap:Body>';
data = data + '</soap:Envelope>';

var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
var URL="http://localhost:1323/WebSite6/Service.asmx";
xmlhttp.Open("POST",URL, false);
xmlhttp.SetRequestHeader ("Content-Type","text/xml; charset=gb2312");
xmlhttp.SetRequestHeader ("SOAPAction","http://tempuri.org/SayHelloTo");
xmlhttp.Send(data);
document.write( xmlhttp.responseText);

}

</Script>

<input type="button" value="CallWebserviceByGet" onClick="RequestByGet(null)">
<input type="button" value="CallWebserviceByPost" onClick="RequestByPost('Zach')">

</body>
</html>
对于使用post方法需要发送的那堆东东可以在webservice的测试页面中找到,自己拼凑加上对应的参数就可以。

我发现用post方法的时候响应很慢,是因为用Post方法时发送的数据多的原因吗?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[转]:Javascript+xmlhttp调用Webservice 的相关文章

随机推荐

  • 005 快排qsort库函数的用法——“C”

    文章目录 前言 一 什么是qsort快排函数 qsort的参数分析 二 使用步骤 前言 Reference C Reference cplusplus com 可在此网站查阅相关函数信息 提示 以下是本篇文章正文内容 下面案例可供参考 一
  • Reachability(判断网络是否连接)

    类似于一个网络状况的探针 NSNotificationCenter defaultCenter addObserver self selector selector reachabilityChanged name kReachabilit
  • 【ROS】学习之日志(log)消息

    参考 ROS学习之日志消息 ROS中的日志 log 消息 ROS日志级别控制 ROS日志 log 系统 通过显示进程的运行状态是好的习惯 但需要确定这样做不会影响到软件的运行效率和输出的清晰度 ROS 日志 log 系统的功能是让程序生成一
  • 傻瓜式阿里云部署java web项目步骤

    写在前面 本傻瓜式步骤适用于阿里云服务器是Windows Server 2008操作系统 一 阿里云操作步骤 1 首先提前准备好阿里云账号和密码 访问地址 阿里云 2 登录后进入首页 点击云服务器ECS 如图 3 进入云服务器ECS 点击实
  • java比较器Comparable接口和Comaprator接口

    java的比较器有两类 分别是Comparable接口和Comparator接口 在为对象数组进行排序时 比较器的作用非常明显 首先来讲解Comparable接口 让需要进行排序的对象实现Comparable接口 重写其中的compareT
  • MySQL - 普通索引

    创建和查看索引 创建索引是指在某个表的一列或多列上建立一个索引 以便提高对表的访问速度 创建索引有3种方式 分别是创建表的时候创建索引 在已经存在的表上创建索引和使用ALTER TABLE语句来创建索引 本节将根据具体的索引分类详细的讲解这
  • (最简单)使用 reset-css 初始化浏览器css样式

    目录 背景 实现 步骤一 步骤二 背景 在我们的项目初始化搭建过程中会遇到这种情况 需要我们自己清除css默认样式 但是我们不可能一周都有那个清除默认css样式的文件 实现 步骤一 在终端使用 npm 引用 reset css npm i
  • mysql linux redhat_RedHat Linux 6 下 MySQL 8.0.11安装配置

    我这里是RHEL6 5的系统 因此选择RedHat 6 x86 64bit操作系统 下载第一个RPM Bundle即可 MySQL 8 0 11 1 el6 x86 64 rpm bundle tar 目前MySQL8 0 11社区版提供了
  • C++ system()函数的常用用法 (史上最详细)

    目录 一 推荐 1 system pause 2 system color 3 system title 4 system cls 二 文件操作 1 system start 2 system del 3 system copy A B 4
  • ReactDOM.render(...) 渲染方法

    React代码的书写格式和以前的JS有很大的不同 下面通过对这段代码进行分析了解一下他 以前使用Javascript定义一个变量用var ES6加入了const关键字 用来定义一个常量 const div document createEl
  • 【Kotlin】快速理解协程与挂起

    本文不介绍协程和挂起的基础用法 如需要请移步其他博客 本文主要讲解 kotlin中的协程是什么 协程的作用 挂起是什么 挂起的作用 本文全程尽量白话 使得协程和挂起理解起来更容易 小故事or小事故 之前面试的时候 有个面试官问了我一个问题
  • 语义分割任务中的Transformer

    文章目录 语义分割中的Transformer 1 Patch based Transformer 1 1 SETR 1 2 Segformer 2 Query Based Transformer 2 1 Transformer with O
  • vscode更新时报错怎么办?

    请用管理员权限 打开试试
  • vue2组件系列:Slider 滑块

    我所接触到的Slider滑块应用的场景 主要有图片的放大缩小 调节声音的大小 不知道小伙伴们的应用场景都有哪些呢 欢迎在文章下方留言讨论哈 准备工作 创建一个页面 Slider vue在router js里配置 Slider页面的路由 pa
  • js实现文字上下滚动(到底回到顶部重复滚动)

    直接贴代码 div class scroll ul li 开始 li li 用户 li ul div
  • mybatis传参1 - 传入map类型的参数

    本章将介绍mybatis如何传入参数 传入map类型的参数 我们需要定义如下三部分 目录 1 接口部分 2 mapper文件部分 3 测试类部分 4 测试本次结果 4 1跑出来的值 4 2mysql值 1 接口部分 定义一个接口返回User
  • 【轩说Java】JavaSE知识点难点汇总

    文章目录 JAVA SE 抽象类与其实现子类 抽象类与其子类如下 静态函数不存在重写和多态的概念 重写的要求 接口interface 类 接口的实现 一对多 接口 接口的继承 一对多 接口中的变量和函数 接口作为一种标签 堆 栈 静态方法区
  • Flask-SQLALchemy 连接数据库

    Flask SQLALchemy 连接数据库 在 Flask Web 框架中 Flask SQLALchemy 扩展对数据库操作进行了封装 使用 Flask SQLALchemy 可以通过 Python 对象来操作数据库 一 Flask S
  • Kubernetes集群配置免费的泛域名证书支持https

    前言 kubernetes 集群默认安装的证书是自签发证书 浏览器访问会发出安全提醒 本文记录了利用 dnspod cert manager let s encrytp 等开源组件 实现泛域名证书的自动生成 续期管理 为现有kubernet
  • [转]:Javascript+xmlhttp调用Webservice

    原文地址 http netboy cnblogs com archive 2006 02 18 333260 html 1 创建webservice 为了免于落俗我稍稍修改了创建webserice的默认webmethod using Sys