web前端面试问题_Web服务面试问答

web前端面试问题

web前端面试问题

在这篇文章中,我们涵盖了您需要熟悉的Web服务概念的几乎所有部分,以回答任何层级问题。 您还将在分类中找到最佳的Web服务面试问题和答案,因此只有在必要时才可以使用特定条款。

今天,可以在各种编程平台上开发各种Web应用程序。 确保此类多样化应用程序之间的完整而准确的连接变得更加困难。 该问题的解决方案是“ Web服务”,它思考并充当在所有这些使用已开发的不同编程语言的各种Web应用程序之间进行通信的方式。 Web服务使用可通过Internet或专用网络轻松访问的结构化XML通信系统。

目录

Web服务基础

1.什么是Web服务?

Web服务基于客户-服务器系统,客户应用程序将从中获取网络服务。 Web服务提供端点URL,并通过用Java,Shell脚本或许多其他技术编写的用户程序提供网络访问技术。 Web服务是无状态的,并且不保留Web应用程序用户会话。

2. Web服务如何工作?

Web服务使用开放标准(例如HTML,XML,WSDL和SOAP)在不同应用程序之间进行交互。 您可以在Ubuntu上的Java上构建Web服务,可以从Windows本地的Visual Basic项目中访问该Web服务。 另外,C#可用于为Java Server Pages(JSP)Web应用程序创建新的Windows enact Web服务,该服务在Linux下运行。

3. Web服务的优点是什么?

Web服务的一些主要优点是:

  • 互操作性:一个应用程序可以使用Web服务以任何语言与另一个应用程序进行交互。
  • 可重用性:Web服务可能会公开给其他应用程序。
  • 模块化:我们可以使用Web服务为特定任务构建服务,例如税金计算。
  • 每个应用程序的标准协议:Web服务使用标准化协议,以使其对于以各种语言编译的客户应用程序而言是可以理解的。 此常规过程有助于跨平台实现。
  • 通讯成本更低:Web服务确实使用HTTP上的SOAP来允许任何人使用Web服务已经存在的Internet。

4. Web服务的组成部分是什么?

各种Web服务组件如下:

  • SOAP-简单对象访问协议
  • UDDI-通用描述,发现和集成
  • WSDL- Web服务描述语言
  • RDF-资源描述框架
  • XML可扩展标记语言

5.解释关于Web服务的互操作性吗?

当我们谈论Web互操作性时,这同样适用。 当我们谈论“互操作性”时,同样适用于Web服务。 在这种情况下,它决定了不同应用程序,信息共享和服务之间的交互。 不限制要传达的请求的类型。 脚本发布后,它将被视为所有应用程序都可以理解的标准脚本。 因此,对于每个应用程序,降低了编写特定脚本的成本。

6.定义Web服务协议栈及其层?

Web服务的协议栈包括四层。 如下所示:

1)服务传输:这是第一层,它允许在不同的客户端程序之间传输XML消息并使用以下列出的协议:

  • HTTP(超文本传输​​协议)
  • SMTP(简单邮件传输协议)
  • FTP(文件传输协议)
  • BEEP(块可扩展交换协议)

2)XML消息传递:这是基于XML模型的,该模型以其他人可以轻松理解的流行XML格式编码消息。 该层包括:

  • XML-RPC
  • SOAP(简单对象访问协议)

3)服务描述:该层包括位置,可用功能的描述以及描述特定Web服务的公共接口的XML消息传递数据类型。 包括这一层:

  • WSDL(Web服务描述语言)

4)服务发现:此层提供了一种在整个Web上发布和查找Web服务的方法。 该层包含:

  • UDDI(通用描述,发现和集成)

7.解释Web服务架构?

Web服务框架包括三个不同的体系结构层。 以下是各层的作用:

  • 服务提供商:顾名思义,服务提供商的功能是开发Internet服务,并通过Internet将其提供给客户软件以供其使用。
  • 服务请求者: 与客户端应用程序一样,服务请求者本质上是Web服务的用户。 通过通过可用的Internet连接传输XML要求,可以以任何语言联系Web服务为所有类型的功能编译用户程序。
  • 服务注册表:服务注册表是支持客户Web服务位置的核心存储库。 当前的Web服务可以在这里找到,新的程序员也可以构建它们。

服务提供商通过注册表服务的“发布”界面使当前的Web服务可供客户应用程序访问。 服务请求者能够使用服务寄存器提供的所有信息来附加或覆盖服务。

8.享受Web服务的一些优势?

  • 当前每个应用程序都可以在Web上使用,它是Web服务,为用户应用程序提供了一些必要的功能。
  • 为了支持其他应用程序,Web服务可以帮助通过网络公开现有功能。
  • 它具有诸如“互操作性”之类的特性,这些特性决定了不同应用程序之间的交互,数据共享以及它们之间的服务。
  • 为了进行通信,Web服务使用由4个层组成的标准Internet服务协议栈,即运输服务,XML消息,描述和发现服务。
  • 由于SOAP通过HTTP协议(简单对象访问协议)进行应用,因此它提供了最小的交互成本。
  • 它易于安装,吸收和重复使用。
  • 在松耦合功能中,可以轻松集成各种功能。

9.解释哔声?

BEEP代表块可扩展交换协议。 它被称为直接位于TCP之上的新的Internet工程任务组(IETF)。 它称为新的IETF(Internet工程任务组),它直接叠加在TCP上。 它具有一些集成功能,例如:

  • 认证方式
  • 安全
  • 错误处理
  • 握手协议

REST和SOAP Web服务

10.您对RESTful Web服务了解多少?

REST代表代表性状态转移。 对于通过Web获得的应用程序的开发,REST被描述为无状态的客户端-服务器体系结构。 当Web服务使用HTTP方法时,它们被视为实现REST体系结构理论的RESTful Web服务。 这种架构风格的数据和功能用作资源,可以通过URI进行访问。 使用RESTful Web服务,Web服务可以通过创建以下属性来发挥最佳性能:

  • 性能
  • 可扩展性
  • 可修改性

11.解释RESTful Web服务的优势吗?

RESTful Web服务的优点如下:

  • 这些可以用任何编程语言编写,并且可以在每个框架上执行。 语言和框架是完全独立的。
  • REST紧凑,由于带宽和资源消耗较少,因此可以快速查看。
  • 该系统包括多种技术和数据格式,例如纯文本,XML,JSON等。
  • 可以通过浏览器进行可行性检查,并具有松散耦合的实现。

12. REST Web服务和SOAP Web服务之间有什么区别?

REST和SOAP之间的主要变化如下所述:

  • REST提倡各种格式,例如文本,JSON和XML,而SOAP仅支持XML。
  • REST仅通过HTTP(S)在传输层上运行,因为SOAP也可以在单独的传输层协议上使用。
  • REST使用资源进行操作,而每个URL都是一个资源描述,而SOAP则通过使用各种工作流来创建特定业务逻辑的业务操作进行操作。
  • 面向SOAP的读取无法归档,因为SOAP需要在可以归档面向REST的读取的地方进行缓存。
  • SOAP增强SSL和WS的安全性-REST仅增强SSL安全性。
  • SOAP促进ACID(原子性,一致性,隔离性,耐久性); REST促进事务,但是它不符合ACID,并且不能提供两个提交阶段。

13.解释RESTful Web服务支持的不同HTTP方法吗?

RESTful Web服务认可的一些流行的HTTP方法和功能如下所述:

  • GET:对资源的只读访问。
  • 放置:创建新资源。
  • 删除:删除资源。
  • POST:更新现有资源。
  • 选项:获取对资源的支持操作。
  • HEAD:仅返回HTTP标头,没有人。

14.为了设计安全的RESTful Web服务,应遵循的最佳因素是什么?

由于HTTP URL路径用作RESTful Web服务的组件,因此必须加以保护。

  • 在服务器上执行所有SQL注入攻击参数的批准。
  • 请求请求时,基于用户会话执行身份验证。
  • 不要使用私人信息,例如用户名,会话令牌的密码等。这些信息应通过POST方法传输。
  • 对诸如GET,POST,PUT,DELETE等方法的适当限制。
  • 必要时,必须调用标准HTTP错误消息。

15.什么是SOAP Web服务?

基于XML的协议被称为简单对象访问协议(SOAP),该协议以Web服务的设计和开发以及各种平台上的应用程序与Internet上具有不同软件语言的交互而闻名。 它独立于平台和语言。

16. SOAP如何工作?

SOAP提供了一个可由客户端对象访问的用户界面,并且它发送的应用程序可从服务器对象访问。 用户界面生成一些文档或过程,包括服务器对象和服务器对象接口名称。 HTTP使用POST方法,该方法将扫描该方法并将结果发送到客户端和服务器。 HTTP使用POST方法,将XML发送到服务器,服务器检查该方法并将结果传输给客户。 服务器提供更多XML,以通过HTTP回答用户界面请求。 客户端可以使用任何策略来发送XML,例如SMTP Server或POP3协议,用于传递消息或回答查询。

17. SOAP的优缺点是什么?

SOAP Web服务的好处在下面提到:

  • SOAP提供了不同应用程序之间的交互,并且独立于语言和平台。
  • 使用标准的HTTP协议和XML传输和接收消息也非常容易。
  • 他们定义并采用了自己的安全性,即WS安全性。
  • 它将编码和交互与工作环境断开。
  • 它消除了防火墙的麻烦,并且对卖方公正。
  • 它使消息能够在分布式和分散式环境中传播。

以下是SOAP Web服务的缺点:

  • 不支持XML以外的轻量级格式。
  • 在浏览器上,不容易测试。
  • 没有安全设施。
  • SOAP是一个缓慢且无法轻松进行浏览器测试的过程。
  • Web服务和客户端之间有着紧密的联系,并描述了必须严格遵守的某些要求。

18. SOAP消息的元素是什么?

SOAP与其他XML文档类似,并且具有以下各项:

  • 信封:它转换XML文档并定义SOAP消息的开始和结束。 该元素被确定为根元素。
  • 标头:此元素包括包含特定应用程序信息的可选消息标头功能。 该元素可以发生多次,以添加新的功能。
  • 正文:此元素是必需元素,包括请求和响应通知。 它也被描述为信封中的子元素,涉及从SOAP消息中交换的,从应用程序提取的所有XML数据。
  • Fault元素: Fault元素处理在整个消息处理过程中发生的错误。 如果存在错误,则此元素可用作主体中的子元素。 但是只能存在一个故障块。

19. SOAP信封元素的重要特征是什么?

在上一个问题中,我们看到了SOAP信封的基本工作,现在让我们看看它的一些功能:

  • SOAP打包是打包过程。
  • 每个肥皂消息的根消息都是强制性的。
  • 对于每个信封元素,仅允许一个主体元素。
  • 更改SOAP版本时,信封会更改。
  • 当header元素存在时,它应该作为第一个孩子出现。
  • 为了规范,使用了ENV前缀和信封元素。
  • 如果是可选的SOAP编码,则使用名称空间和可选的编码样式。

20.定义SOA?

由服务组成的体系结构模型被描述为面向服务的体系结构(SOA)。 在此应用程序组件中,其他组件使用网络通信协议提供服务。 这种交互包括信息交换或服务合作。 以下是SOA所基于的一些基本原则:

  • 服务合同中必须简化所有服务描述。
  • Web服务和客户端之间的松散连接定义了较少的依赖性。
  • 必须遵循服务抽象,该抽象表示服务不能指示客户端应用程序的功能是如何执行的。
  • 为了使用不同的应用程序类型,服务应该是可重用的。
  • 无状态服务应具有用户友好性特征。
  • 服务解决了主要问题,并使各种用户可以使用服务。

21.什么是WSDL?

WSDL是Web描述语言服务。 它是一个XML文档,包含在Web服务协议栈服务描述层中,概述了Web服务的技术信息或用户界面。 WSDL文档中的一些重要信息如下:

  • 方法名称
  • 端口类型
  • 服务终点
  • 方法参数
  • 标头信息
  • 产地等

22. SOAP Web服务中的“自上而下”和“自下而上”方法有什么区别?

用于开发与客户打交道的Web服务的第一个WSDL文档是以自上而下的方式开发的,然后编写代码并将其称为第一个合同。 这很难实现,因为必须编写类来确认WSDL合同。 优点是客户和服务器代码可以同时写入。

第一个Web服务代码使用Bottom Up方法编写,然后生成WSDL。 也称为合同的最后一种方法。 由于WSDL是基于代码的,因此可以轻松实现此方法。 这种方法的客户端代码必须等待,直到从服务器端启动WSDL。

23. WSDL文档有哪些不同元素?

WSDL文档的各种元素和简短描述如下:

  • 类型:这以XML方案的形式列出了Web服务使用的消息数据的形式。
  • 消息:这描述了每个事务要映射的完整文档或参数的数据组件,其中可能包含消息。
  • 端口类型: WSDL提供各种服务。 端口类型确定绑定事务的集合。
  • 绑定:查找并描述每种端口类型,协议和数据格式。
  • 操作:这指定如何为该操作处理消息。

24.征服WSDL中使用的操作类型响应吗?

基本上,WSDL定义了四种类型的响应类型操作。 这些详细说明如下:

  • 单向:获取消息,但不返回响应。
  • Request-Response:收到请求并返回答复。
  • 请求响应:等待响应,发送请求。
  • 通知:不期望响应,而是发送一条消息。

也许最流行的操作类型涉及请求-响应。

25.什么是UDDI?

UDDI是一种通用的描述,发现和集成。 UDDI是一个Web服务存储库,客户应用程序可以在其中搜索Web服务。 Web服务可以输入,并使客户应用程序可以访问UDDI服务器。

26. SOA和WEB SERVICE有什么区别?

面向服务(SOA)架构由应用程序开发中的模块化方法组成,该方法涉及通过常规互操作性使用具有标准化接口的分布式,松散耦合元素(松耦合)。 根据面向服务的体系结构开发的软件系统通常用作与SOAP协议进行通信的一系列基于Web的服务,但是还有其他应用程序(例如,基于jini的,基于CORBA的,基于REST的)。 使用XML,JSON和其他Web协议(例如HTTP(S),SMTP等)的Web服务正在实现此概念。

SOAP消息是否与任何协议绑定?

来自不同背景的应用程序可以彼此快速通信,而无需了解使用传输协议的各种系统的内部功能。 来自不同背景的应用程序可以快速相互交互,而无需了解使用传输协议的各种系统的内部功能。 可以使用HTTP(超文本传输​​协议)实现SOAP消息,而FTP(文件传输协议)则是可信赖的传输过程。 对于传输机制,也可以使用SMTP和BEEP。 SOAP消息未链接到任何协议。 可以使用任何开放式运输协议。

28. HTTP请求中Accept和Content-Type标头的用途是什么?

这些是静态Web服务的关键标头。 接受标头指示客户端正在接受Web服务的响应类型。 因此,当Web服务能够以XML和JSON格式发送答案,并且客户端将Accept标头发送到“ application / xml”时,将发送XML答复。 服务器发送接受“ application / json”标头的JSON响应。 标头内容-类型用于通知服务器所发送信息的格式。 服务器尝试将Content – Type标头分析为XML数据(如果它是“应用程序/ xml”)。 在HTTP Post和Put请求中,此标头很有用。

29. Web服务的主要安全问题是什么?

Web服务要求非常高的保密性,只有通过Entrust安全交易平台才能实现,以保证可信赖的交易和安全的私人信息。 Web服务可利用的漏洞分为三个被广泛提及的部分安全挑战:

1)机密性:单个Web服务有多种用途,并且可以在服务路径上建立到其端点的明显的弱链接。 因此,必须对通信保密。 因此,必须对通信保密。

2)身份验证:身份验证实际上是为了检查订户的身份并确保使用Web服务的订户有权使用或不使用它? 还执行身份验证以遵循用户的实践。 为此,可以考虑以下几种选择:

  • 应用层认证
  • HTTP摘要和HTTP基本身份验证
  • 客户证书

3)网络安全:这是一个主要问题,需要使用工具来过滤Web服务上的流量。

30.您对基金会安全服务了解多少?

以下是基础安全服务:

  • 积分
  • 认证方式
  • 授权书
  • 数字签名
  • 加密过程

31. Restful Web服务中的资源是什么?

静态架构的基本概念是资源。 资源是一种类型对象,与使用的许多其他资源和技术有关。 资源通过其URI,HTTP方法,数据类型和数据格式请求/响应来识别。

32.解释SOAPUI执行的操作?

SOAPUI是一个功能测试解决方案,开源,免费和跨平台的。 下面提到了SOAPUI采取的一些措施:

  • 他们可以帮助开发功能测试套件,安全性和负载。
  • 还测试了驱动数据和基于场景的测试。
  • 它可以代表Web服务并具有集成的报告功能。

33.有什么不同的方法来测试Web服务?

可以通过创建WSDL客户端存根或诸如soap用户界面之类的软件以编程方式检查SOAP Web服务。 使用程序,curl指令和浏览器扩展,可以轻松测试REST Web服务。 可以使用浏览器本身来评估GET方法资源,而无需任何程序。

34.什么是委托识别服务?

Entrust安全交易平台对Entrust身份识别服务进行了分类,该服务为安全交易提供了必要的安全功能。 这有助于公司完全规范可信任的Web服务交易身份。

35.什么是委托权利服务?

Entrust授权服务将是那些挑战在于验证设法获得Web服务的服务的服务。 它实质上保证了在商业活动以及某些验证服务中的保护。

高级Web服务问题

36.如何在Web服务中处理身份验证?

在Web服务中,通常使用服务于API的后端服务器生成的JWT令牌来处理身份验证。 这些令牌会定期刷新以授权用户

37. Web服务比普通的Servlet请求有什么好处?

Web服务允许更快地获取数据并支持各种响应类型。 Web服务还允许使用严格的信封标准来验证和格式化数据

38. Web服务的主要应用是什么?

Web服务主要用于预期前端与后端隔离的项目中。 此外,Web服务还可以用于向其他第三方用户公开后端业务逻辑。 其他用途包括:

  • 使用Web服务存储数据
  • 使用Web服务进行身份验证
  • 使用Web服务获取种子数据

39.为什么Web服务越来越流行?

Web服务是独立的端点,无论源接口的操作系统和编程语言如何,都可以提供和使用数据。 这使得可以轻松修改和升级前端,而不必担心会影响后端。

40.有哪些流行的Java框架可用于构建Web服务?

用Java构建Web服务的最流行的方法是:

  • Spring REST控制器
  • JAX-RS
  • JAX-WS

结论

这些是有关我们服务的最重要问题。 回答这些问题的目的是使您的面试更加轻松。 但是,总会有更多的探索。

如果您喜欢此功能,请订阅我们的时事通讯以享受每周更新和免费白皮书! 另外,请查看我们的课程以进行更高级的培训!

欢迎您提出您的意见,我们会将其纳入本文!

翻译自: https://www.javacodegeeks.com/2019/04/web-services-interview-questions-answers.html

web前端面试问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值