C#远程调用技术WebService葵花宝典

一、课程介绍

直接开门见山吧,在学习之前阿笨想问大家一句,关于WebService远程过程调用技术(RPC) 你真的会了吗?不要跟老夫扯什么WebService技术已经过时,如果你的内心有在偷偷告诉你其实我是真的不会WebService的话,那么恭喜你,因为你在这茫茫的IT编程世界里找到了这本《C#远程调用技术WebService葵花宝典》!曾经有一位不知名的讲师说过这么一句名言: 一门RPC技术不会,那么千万万门RPC技术将都不会! 本次阿笨的分享课包含以下知识点。 1、C# WebService常用的几种调用方式。 2、WebService如何使用异步调用。(基于异步委托BeginInvoke/EndInvoke、基于委托事件机制、基于Async Task异步编程模式) 3、C# WebService如何保证客户端以安全的方式进行访问。 4、C#通过反射(Reflection)动态创建WebService实例。 5、微软的轻量级的IOC框架Unity的基本使用。 在此插播一条硬广告:下一堂分享课程阿笨计划将给大家带来《C#面向服务编程技术WCF从入门到实战演练》。 如果您对本次分享课感兴趣的话,那么请跟着阿笨一起学习吧。废话不多说,直接上干货,我们不生产干货,我们只是干货的搬运工。

二、C# WebService两种不同引用使用方式 

2.1、Web References方式引用。

2.2、Service References方式引用。

三、C# WebService如何使用异步调用

3.1、基于异步委托BeginInvoke/EndInvoke。

3.2、基于委托事件的Event机制。

3.3、基于Async Task 异步编程模型。

四、C# WebService如何保证客户端以安全的方式进行访问

4.1、先说话一下何为安全?我们需要解决什么问题?

调用安全:由于WebService是暴露在公网中,怎么防止非法用户调用我们的服务呢?因此我们需要解决:授权问题。 数据传输安全:由于我们的数据都是通过密文在网络上进行传输很容易被窃取到。因此我们需要解决:数据被窃取问题。 以上解释仅仅是阿笨狭义的理解;网络安全还包括很多方面,会话劫持、会话被篡改等等。

4.2、阿笨分享一下目前的几种常用的解决方案。

1、WebService每一个方法都需要传递一个Token固定的参数,不同的调用者各自的Token值不一样。服务端有一套规则算法生成Token值,将这个值持久化在关系数据库或者文件以及内存数据库中。 2、WebService采用asp.net的认证机制。常见的认证方式有:FORM身份验证、集成WINDOWS验证、Basic基础认证、        Digest摘要认证、 3、WebService采用SSL实现加密传输。       HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer)安全传输协议。(强烈推荐) 4、通过WebService给我们提供的SoapHeader来实现用户身份验证。(强烈推荐)        阿笨将实战环节给大家分享一种优雅的方式进行针对WebService身份验证。 5、以上几种解决方案进行组合使用。(个人推荐使用:③+④两个方案进行组合使用)(强烈推荐) 总结:我们可以通过SoapHeader来保证WebService的授权使用;可以通过SSL来保证数据的加密,防止网络侦听!

五、C# WebService如何采用SoapHeader进行身份验证

WebService身份验证

六、C# WebService如何通过优雅的方式进行统一入口调用

6.1、Unity容器方式获取WebService服务实例。 6.2、Reflect反射方式获取WebService服务实例(推荐使用)。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java学习

Hibernate初体验

由于小编最近要接手一个用Hibernate写的项目,所以就学了一下,如果之前学过Spring Date Jpa的小伙伴看起来应该很简单!

9710
来自专栏cloudskyme

apache tuscany(一)

先看一下tuscany简介,简单了解一下tuscany是什么 SCA 的基本概念以及 SCA 规范的具体内容并不在本文的范畴之内,有兴趣的读者可以通过一些相关文...

37860
来自专栏battcn

Spring Cloud for Alibaba 发布

spring-cloud-alibaba 项目由阿里的开源组件及部分阿里云产品组成,基于 Spring Framework 框架扩展和封装,同时将 Spring...

91110
来自专栏云计算

基于微服务的 Abixen 平台中的领域驱动设计方法

原文地址:https://dzone.com/articles/ddd-tiers-approach-in-microservices-based-abixen

67450
来自专栏Java Web

Spring学习(1)——快速入门

认识 Spring 框架 Spring 框架是 Java 应用最广的框架,它的成功来源于理念,而不是技术本身,它的理念包括 IoC (Inversion of ...

62850
来自专栏Java进阶架构师

这么说吧,NIO很简单,其实就是个牛逼IO,吹牛逼用的

NIO 也能算是一种思想,非阻塞IO通信思想,Netty就是基于NIO思想的NIO框架,

25830
来自专栏JackieZheng

Spring实战——无需一行xml配置实现自动化注入

  已经想不起来上一次买技术相关的书是什么时候了,一直以来都习惯性的下载一份电子档看看。显然,如果不是基于强烈的需求或强大的动力鞭策下,大部分的书籍也都只是蜻蜓...

23660
来自专栏子勰随笔

SDK设计心得之错误码

83760
来自专栏Java社区

spring是什么?它能够做什么?新手必看

20930
来自专栏情情说

《深入实践Spring Boot》阅读笔记之一:基础应用开发

上上篇「1718总结与计划」中提到,18年要对部分项目拆分,进行服务化,并对代码进行重构。公司技术委员会也推荐使用spring boot,之前在各个技术网站中也...

36590

扫码关注云+社区

领取腾讯云代金券