前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Flex 调用添加了SoapHeader的web service

Flex 调用添加了SoapHeader的web service

作者头像
用户3135539
发布于 2018-09-12 03:38:59
发布于 2018-09-12 03:38:59
5940
举报
文章被收录于专栏:

1.NET中撰写需要使用SoapHeader验证的Web Service

代码1:WebService.cs

using System.Web.Services; using System.Web.Services.Protocols;

[WebService(Namespace = "http://www.microsoft.com/")] //名字空间,注意FLEX中调用的时候要手工填写 [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]          public class WebService : System.Web.Services.WebService {

         public WebService () {}

public AuthenticationInfo authenticationInfo;

         [WebMethod] [SoapHeader("authenticationInfo")] //为服务添加SoapHeader          public string HelloWorld() {                   if (authenticationInfo == null)  {                            return "验证信息不能为空."                   }                   else{                            if (Authentication.Check(authenticationInfo.username, authenticationInfo.password))  {                                    return "Hello world!"                            }                            else{                                     return "用户名密码验证失败,你没有权力访问此服务。"                            }                   }          } }

//用户密码验证类 public class Authentication {          public static bool Check(string username, string password) {                  return ((username == "user") && (password == "password"));          }         }

代码2:AuthenticationInfo.cs

using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;

/// <summary> /// AuthenticationInfo 的摘要说明 /// </summary> public class AuthenticationInfo:System.Web.Services.Protocols.SoapHeader{          public AuthenticationInfo() { }          public AuthenticationInfo(string username ,string password)         {                   this.username = username;                   this.password = password;          }          public string username;          public string password; }

2 在.NET中调用使用了SoapHeader的Web Service

代码3:Form1.cs

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms;

namespace WindowsApplication1{          public partial class Form1 : Form{                   public Form1() {                            InitializeComponent();                   }                   private void button1_Click(object sender, EventArgs e){                            localhost.WebService service = new WindowsApplication1.localhost.WebService(); localhost.AuthenticationInfo au = new WindowsApplication1.localhost.AuthenticationInfo();                            au.username = textBox1.Text;                            au.password = textBox2.Text; service.AuthenticationInfoValue = au;                            label3.Text = service.HelloWorld();                   }          } }

3 在Flex调用此Web Service

代码4:SoapHeaderTest.mxml

<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontFamily="simsun" fontSize="12"> <mx:Script> <![CDATA[         import mx.rpc.events.FaultEvent;         import mx.rpc.events.ResultEvent; import mx.rpc.soap.SOAPHeader;         private function Invoke():void{ ws.clearHeaders(); //先清理一下 var auinfo:Authentication = new Authentication(txtUser.text,txtPassword.text); //                 ws.addHeader(auinfo); //添加                 ws.HelloWorld(); //调用服务         }         private function wsResult(event:ResultEvent):void{                 lblInformation.text= event.result.toString();         }         private function wsFault(event:FaultEvent):void{                 lblInformation.text= event.message.toString();         } ]]> </mx:Script> <mx:WebService id="ws" wsdl="http://localhost:4443/WebSites/WebService.asmx?WSDL" result="wsResult(event)" fault="wsFault(event)"/> <mx:TextInput id="txtUser" x="98" y="94"/> <mx:TextInput id="txtPassword" x="98" y="124"/> <mx:Label x="29" y="98" text="User:"/> <mx:Label x="29" y="128" text="Password:"/> <mx:Button x="193" y="166" label="Invoke" click="Invoke()"/> <mx:Label x="29" y="213" text="Label" id="lblInformation"/> </mx:Application>

代码5:AuthenticationInfo.as

package{         public class AuthenticationInfo{ //字段名称需和.NET端一致                 public var username:String;                 public var password:String;         } }

代码6:Authentication.as

package{         import mx.rpc.soap.SOAPHeader;

public class Authentication extends SOAPHeader{                 public var username:String;                 public var password:String;                 public function Authentication(user:String,password:String){                         var content:AuthenticationInfo = new AuthenticationInfo();                         content.username = user;                         content.password = password; var qname:QName = new QName("http://www.microsoft.com/","AuthenticationInfo"); super(qname, content);                 }         } }

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2007-02-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
APISIX 在荣耀海量业务下的网关实践
荣耀成立于 2013 年,是全球领先的智能终端提供商。荣耀的产品已销往全球 100 多个国家和地区,并与 200 多个运营商建立了合作关系。荣耀在全球的体验店与专区专柜超 52000,在网设备数超 2.5 亿。
深度学习与Python
2025/04/27
1400
APISIX 在荣耀海量业务下的网关实践
腾讯网关 TGW 基础原理入门
作者:厉辉,腾讯后台研发高级工程师,当前在腾讯游戏后台团队工作,熟悉四七层负载均衡以及 API 网关等技术领域,同时也是 CNCF Ambassador 以及 Apache APISIX PMC。 本文是在组内技术分享的发言稿,主要介绍 TGW 基本原理和架构,同时为了加深理解,会辅助对比 TGW 与 LVS(ipvs)的异同。本次分享是偏基础性的 TGW 介绍,不会特别深入技术细节,目的是帮助需要用到 TGW 的同事快速的了解 TGW。 零、引言 TGW,全称 Tencent Gateway,是一套实现多
腾讯技术工程官方号
2022/04/14
3.8K0
腾讯网关 TGW 基础原理入门
腾讯网关TGW架构演进之路
TGW全称Tencent Gateway,是一套实现多网统一接入,支持自动负载均衡的系统, 是公司有10+年历史的网关,因此TGW也被称为公司公网的桥头堡。它对外连接了各大运营商并支撑公有云上EIP、CLB等产品功能,对内提供了公网网络的接入功能,如为游戏、微信等业务提供公网接入服务。
腾讯技术工程官方号
2023/12/28
1.6K0
腾讯网关TGW架构演进之路
腾讯山海网关:P4可编程交换机的实践与总结
随着5G应用的发展,高带宽低延迟的诉求会越来越强烈,网关设备作为流量汇聚点,更能深刻感受到这种压力。发展了近十年的CPU+DPDK模式,在性能和成本双重压力下,也面临越来越大的挑战。在这样的背景下,各种智能硬件随之登场,提供各种各样的硬件offload方案。
用户6874558
2023/02/15
3.4K1
腾讯山海网关:P4可编程交换机的实践与总结
云原生基础设施TCS技术总结与回顾
01 TCS 是云原生时代的基础设施 TCS(Tencent Cloud-native Suite)即腾讯专有云敏捷版 PaaS 平台,提供云原生平台与腾讯自研 PaaS 产品(如 Credis、TDSQL、TSF )等。同时,TCS 也是腾讯公有云、腾讯专有云TCE以及腾讯 SaaS 产品的通用底座,为腾讯各个云产品在各个场景的输出和交付提供统一的底座。 TCS 云原生基础设施是 TCS/TCE 解决方案中的基础设施与容器平台层,为腾讯的各种云产品私有化输出提供向上屏蔽底层 IaaS 差异的云原生计算、
腾讯专有云
2023/02/17
7.7K0
云原生基础设施TCS技术总结与回顾
腾讯云虚拟网络架构揭秘
腾讯云开发者社区
2017/12/12
9.6K0
腾讯高性能分布式路由技术,亮相亚太网络研讨会APNet
亚太网络研讨会(APNet)汇聚亚太地区计算机网络和系统领域最优秀的研究人员,分享各自最新的研究成果,讨论当前最前沿的热点研究问题。2020年8月3-4号,为期两天的第四届亚太网络研讨会(APNet’20)在线上举行,包括腾讯、阿里、微软、英伟达、思科、字节跳动等分别分享了各自在网络领域的最新成果,其中腾讯TEG网络平台部架构师吕建超做了主题为Scalable and Flexible Routing Service for Tencent Cloud Access Network的演讲。 htt
鹅厂网事
2020/08/19
1.5K0
腾讯自研交换机系统优化之路
一、Tencent NOS概述 SONiC is an open source network operating system based on Linux that runs on switches from multiple vendors and ASICs. SONiC offers a full-suite of network functionality, like BGP and RDMA, that has been production-hardened in the data cen
鹅厂网事
2020/09/18
2.9K0
从纯软件转发到软硬一体化可编程,腾讯云网关技术演进之路
作者 | 郑胜利 近十年来,国内的云计算业务取得了长足的进步,越来越多的企业认识到云的价值,将业务部署在云上,云也为客户提供了存储、计算、数据库、安全、大数据等丰富的服务。云服务规模的爆发式增长,对网络提出了巨大的挑战,传统网络方式已无法满足大规模云应用阶段网络的诉求,主要有以下几个方面。 网络规模巨大,短视频、直播等业务应用快速发展,导致单一客户动辄要求 10T 级别带宽,10 万级别路由,数以万计的客户叠加情况下对网络系统规格挑战巨大; 网络弹性要求高,客户业务发展变化快,并且存在秒杀、大促、公共突发
深度学习与Python
2023/03/29
9700
从纯软件转发到软硬一体化可编程,腾讯云网关技术演进之路
eBay基于Istio的应用网关的探索和实践
7月17日,在Cloud Native Days China云原生多云多集群专场,eBay软件工程师陈佑雄发表了《eBay基于Istio的应用网关的探索和实践》主题演讲,分享了eBay在多集群,多环境,大规模的场景下,Istio落地实践的探索和实践。
heidsoft
2021/08/26
1.4K0
eBay基于Istio的应用网关的探索和实践
混合云演习常见案例
当检测到物理线路1发生故障,系统自动将流量切换至物理线路2,保证业务正常运行。故障修复后,流量自动切回。
怡然自得
2022/06/21
1.5K0
腾讯数据中心网络故障快速自愈实践
前言 腾讯云市场规模近几年飞速增长,承载的业务类型覆盖电商、直播、金融、互联网等越来越多的内外部用户核心业务;基础网络作为腾讯云极为重要的基础设施,采用高冗余设计很好的支撑了业务的高速发展,部分架构甚至达到128台设备冗余,像设备宕机,链路中断,协议收敛等常规故障,业务基本无感知。由于部分业务对网络故障非常灵敏,网络设备转发轻微丢包可能会有影响,针对此类场景,我们需要具备全面而准确的快速自愈能力,能又快又准地定位并隔离异常网络设备,以尽可能快的速度恢复业务。 传统商业网络设备本身具备一定的故障自愈能力
鹅厂网事
2021/11/10
3.9K0
腾讯ECN——泛在互联,便捷入云
前言       在移动互联网时代,腾讯网络团队支撑了腾讯即时通信、内容、广告、游戏等各种产品,让C端客户可以便利享受到腾讯提供的优质服务。在产业互联网时代,腾讯网络进一步升级,通过ECN(External Connection Network)网络,接入不同区域、不同行业的B端客户,让这些客户可以把数据中心、办公网、分支机构和腾讯云便捷互联,完成业务的数字化升级。 便捷接入        作为B端客户接入的网络产品,ECN面临各种各样的场景和需求,有些客户对接入的时延有要求,有些客户对接入的带宽有要求,
鹅厂网事
2022/04/19
5.8K0
腾讯ECN——泛在互联,便捷入云
腾讯云高可用网络的修炼之道
当他睡眼惺忪、手拿红牛、嘴刁香烟迈着沉重的步伐从某网络核心机房走出来的时候,除了看门大爷简短问候之外,也只有刚刚过去的这个黑夜才真正懂得刚刚发生了什么,在外人眼里,这个夜晚再正常不过,和往常一样,刷刷微博、看看抖音,逛逛购物网站,即便是前一晚上有某些人觉得打开购物网站的页面有点卡慢,他们也可能不会放在心上,然而正是因为这样一个不一样的网络体验,网络工程师们已经是废寝忘食,鏖战了整整一夜,来修复引发这个网络卡慢的bug,在外人眼里一觉醒来,看似波澜不惊,但有时实则是暗流涌动;
abelbai
2020/10/31
12.4K2
腾讯云高可用网络的修炼之道
腾讯汤桢乾:腾讯自研交换机成长之路
“2020 SONiC产业生态研讨会”于9月19日圆满落幕,腾讯网络平台部汤桢乾带来了主题演讲《腾讯自研交换机成长之路》。
SDNLAB
2020/09/27
1.4K0
腾讯汤桢乾:腾讯自研交换机成长之路
腾讯混合云网络设计白皮书
从1999年,公认的云计算先驱-Saleforce.com公司成立,到2006年,Amazon发布了名声大噪的EC2(Elastic Compute Cloud),首次面向公众提供基础架构的云服务产品-IaaS,中间经历了七年的时间。
abelbai
2023/04/26
4.3K1
腾讯混合云网络设计白皮书
海纳百川,有容乃大 ——云网络SDN控制系统演进之路
VPC提供给客户在云端创建自定义的网络服务,用户可以自定义在云端VPC的子网、IP规划等网络参数,将VPC抽象成用户在云端的数据中心。VPC对等连接方案解决了跨域云端数据中心之间的网络互通,VPC专线方案使用运营商专线将云端VPC和用户自有IDC连接起来,部分用户出于成本或者容灾考虑,采用IPsec/SSL VPN通过internet实现IDC与VPC的互通。 腾讯云提供在全球范围的云网络接入服务,且在计算和网络领域已经迈入“双百时代”(全网服务器总数量突破100万台,带宽峰值突破100T),如何高效
鹅厂网事
2020/06/30
1.7K0
腾讯专有云高可用设计内幕揭秘
导语 近几年,大型公有云故障引发的生产业务事故案例时有发生。由于很多开发者默认大型公有云的服务是一直可用的,在开发时没有针对公有云服务进行容错设计,在公有云故障时,就出现了业务的异常。可见,由于大型公有云实际上已经成为了全社会共同拥有的IT基础设施,其业务的高可用也已经成为了企业社会责任的一部分。腾讯云是如何通过完备的高可用设计,来保证云服务的业务连续性和数据持久性,从而承担大厂应有的社会责任的呢? 这篇来自腾讯专有云的架构师方天戟的万字长文为您揭开腾讯专有云高可用设计的内幕。 一. IT 业务高可用的
腾讯专有云
2023/01/01
7.4K0
腾讯专有云高可用设计内幕揭秘
小鹅通基于 TSE 云原生 API 网关的落地实践
2023腾讯全球数字生态大会已于9月7-8日完美落幕,40+专场活动展示了腾讯最新的前沿技术、核心产品、解决方案。
腾讯云中间件团队
2023/09/20
4340
小鹅通基于 TSE 云原生 API 网关的落地实践
腾讯云公网负载均衡技术实现详解
朱彬峰
2017/04/23
23.5K4
腾讯云公网负载均衡技术实现详解
推荐阅读
相关推荐
APISIX 在荣耀海量业务下的网关实践
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档