查看: 2787|回复: 0

[.NET源码] C#远程调用技术WebService葵花宝典

发表于 2018-3-11 10:10:24
一、课程介绍

直接开门见山吧,在学习之前阿笨想问大家一句,关于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服务实例(推荐使用)。

七、WebService葵花宝典在线学习和演示


在线观看地址



不信的话,扫一扫




回复

使用道具 举报