xml地图|网站地图|网站标签 [设为首页] [加入收藏]

可用于你的下一个项目,API开发框架

来源:http://www.ccidsi.com 作者:集成经验 人气:75 发布时间:2020-01-30
摘要:本框架是各样花费方式的幼功上落实了单入口的web服务框架,能够用来开荒API。GitHub仓库地址: 简介:  使用开放源代码 Web 服务框架 Apache CXF 可以超轻易地创设古板Java™ 对象(plai

本框架是各样花费方式的幼功上落实了单入口的web服务框架,能够用来开荒API。GitHub仓库地址:

皇家赌场网址 1

简介: 使用开放源代码 Web 服务框架 Apache CXF 可以超轻易地创设古板Java™ 对象(plain old Java object ,POJO)样式的 Web 服务。本文是本系列的第 1 片段,将向你介绍怎么着使用 Spring 和 CXF 将 POJO 作为 Web 服务公开。本文还将演示 CXF 与 Spring 框架的三合意气风发。

文件夹 用途
controller 存放用户编写的处理HTTP请求的类,其中Controller.php为控制器基类ControllerResolver.php为HTTP请求映射器
config 文件 config.php存放系统的配置信息,如数据库连接信息等
dispatcher 统一处理接收的HTTP请求
public 系统入口处,系统为单一入口文件index.php
registry 注册表类,提供系统配置信息、请求信息的全局访问,其中ApplicationRegistry.php提供系统信息,RequestRegistry.php提供请求信息
request 封装的HTTP请求
view 视图层文件

Node.js 是一个开源的跨平台运营时境遇,用于开拓服务器端和网络应用程序,它根据谷歌 Chrome V8 JavaScript 引擎创设,你能够行使 Node.js 中的 JavaScript 来得以完毕用 Ruby 或 PHP 所做的所有的事物。

引言

  1. 从GitHub上clone本项指标代码到地点

  2. 运行composer install

  3. 将代码安排到本地Web服务器,把simpleWebFramepublic设置为DocumentRoot。能够应用PHP内置的Web服务器火速计划验证:步入到目录simpleWebFramepublic,运行命令php -S localhost:8000,运维成功之后,张开浏览器输入网址:localhost:8000就能够看出接待页面!

正文整理了 10 款 Node.js 框架,依据望用程序功效将框架分为三类:API,全栈和类 Sinatra 的框架。文中的数码总计于各样指标 GitHub 主页(时间为 二〇一四.12.20)。现在也许会有改动。

在本文中,您将接受 CXF 和 Spring 来创设和付出三个订单管理 Web 服务。该 Web 服务管理或表明客商所下的订单,并重临唯豆蔻年华的订单 ID。阅读本文之后,您将可以利用 CXF 的概念和意义来构建和付出 Web 服务。

皇家赌场网址 2welcome.png

API

以下框架由 API 驱动,是相当慢布署 Node.js API 服务器的精华选用。

系统要求

  1. 纵然须要写新的Controller,在controller文件夹创造命名称叫xxxController.php的类就可以

1. Actionhero

那是三个适用于 Node.js 的立刻、轻量级和不可胜数传输的 API 服务器,极其契合创设贰个轻易使用的工具包来制作可选拔和可扩大的 API。集成了集群质量和推迟职务的意义。

Actionhero 可提供上层的支撑(举个例子通过 JSON 集成),同期也能够在底部工作(举例与 TCP 协议通讯)。它装有集群寻思、内置援救后台职分和零停机安顿的功力,何况它能像 CDN 同样分发而没有须要周转 Apache 或 Nginx。

GitHub stars:1,511
GitHub contributors:68

要运维本文中的示例,请确定保障已在计算机上安装和装置了以下软件:

要是在在controller文本夹创立命名字为InfoController.php的类,同临时候在类中开创了info()主意,那么通过U宝马X3L:localhost:8000/Info/info就能够访谈该方法

2. Loopback

那是多个由 IBM 创制的万丈可扩充的 API 框架,可以利用相当少的编码创设动态端到端的 REST APIs。它经过为开垦人士提供七个简便的 API 工具来补偿 Express 框架。

Loopback API 能够延续装置,并且能够与 Android,iOS 和 AngularJS SDK 集成以创办顾客端应用程序。对于应用程序的图样版本,Loopback 使用 StrongLoop Arc。

GitHub stars:7,936
GitHub contributors:82

  • Java 5 或越来越高版本
  • 汤姆cat 5 或更加高版本
  • Ant 创设筑工程具
  • CXF 二进制分发版 2.1

当前还未有曾视图剖析器...

3. Restify

那是多少个为营造 REST APIs 而创立的轻量级框架。它是三个透过 API 提供数据的服务器端框架。Restify 入眼关切调节和测量检验和解析,以便优化服务器。

GitHub stars:6,046
GitHub contributors:146

设置上述分发版现在,设置以下境况变量:

4. Socket.io

本条框架首要适用于实时 Web 应用的景色(比如文书档案合作和数据调换)。Socket.io 能够实现 Web 顾客端和服务器之间的事件驱动通讯;它在浏览器中像顾客端库同样干活,还会有多个用于 Node.js 的服务器端库。

Socket.io 完毕了实时双向的依据事件的广播发表机制。目的在于让种种浏览器与活动设备上落到实处实时 app 功效,模糊化种种传导体制。它是跨平台的,三种连接情势自行切换,做即时通信方面包车型地铁开支很有利,况兼能和 Express 提供的思想意识诉求方式很好的构成,即能够在同四个域名,同三个端口提供二种连接方式:request/response, websocket(flashsocket,ajax…State of Qatar

GitHub stars:29,306
GitHub contributors:124

  • JAVA_HOME(用于 Java)
  • CATALINA_HOME(用于 Tomcat)
  • ANT_HOME(用于 Ant)
  • CXF_HOME(用于 CXF)

全栈

以下框架专一于对全栈的协助。它们包涵了应用程序开辟的每一步,从中间件和 UI 到 API 和数据库的合龙。

例如来佛讲,能够设置 CXF_HOME=C:apache-cxf-2.1 并将以下内容增加到 PATH 碰着变量:

5. Meteor

Meteor 提供营造今世 Web 应用程序的超轻便情形。那是用来创设实时 Web 应用程序的模子视图调节器(MVC)框架,它与服务器不断同步。内置了生机勃勃套预先编写好的独门的模块,扶植理编辑写应用程序代码。

使用 Meteor 营造的应用程序能够在 OS X,Windows 和 Linux 操作系统上运行。它是三个“固执(opinionated)”的框架。

style="color:#008080">(编者注:opinionated,编者通晓的意趣是只要不遵照某种形式使用那些框架,而是用别的办法运用会促成用起来特不便、不便于)

GitHub stars:36,236
GitHub contributors:323

  • JAVA_HOMEbin
  • CATALINA_HOMEbin
  • ANT_HOMEbin

6. Keystone

Keystone,以 Express 和 MongoDB 为根基搭建的 Node.js CMS 和 Web 应用程序平台。此框架是数据库驱动的 Web 应用程序和 API 的卓越选取,其中Express,MongoDB 和 Mongoose 是 Node 的要害组件。

GitHub stars:8,541
GitHub contributors:183

 

7. MERN

类似 Mean,是多少个全栈 Javascript 开采结构,使用 MongoDB,Express,React,Node。具有以下特征

  • React 组件的热加载
  • 模块化文件布局
  • 动用 React 路由器实行代码拆分
  • Ava 测量试验运营(并行运转测量试验)
  • 国际化援助
  • 支持 Docker
  • 支撑代码生成

回页首

类似 Sinatra 的框架

缘何接纳 CXF?

8. Express

Express 是三个简洁而灵活的 Node.js Web 应用框架,提供风姿浪漫类别有力性子以支援你创建各类 Web 应用。它是全速、“不固执”,简约和管事的中间件路由框架。Express 是最要紧的不可缺少 Node.js 框架之风姿浪漫,是营造 Web/移动应用程序和 API 的好好采纳。

GitHub stars:29,008
GitHub contributors:192

Apache CXF 是多少个开花源代码框架,提供了用于方便地营造和支出 Web 服务的保证功底布局。它同意创立高品质和可扩充的劳务,您能够将那样的劳动配置在 汤姆cat 和借助 Spring 的轻量级容器中,以至布署在越来越尖端的服务器上,例如Jboss、IBM® WebSphere® 或 BEA WebLogic。

9. Koa

Koa 是下一代的 Node.js 的 Web 框架。由 Express 团队设计。意在提供三个更Mini、更富有表现力、更保障的 Web 应用和 API 的开辟根基。

那是二个无回调的轻量级中间件框架,能够用来编写 Web 应用程序和 REST APIs,还能增添新功效并自定义路线中的任何内容。它匡助 ES6 和新颖的 JavaScript 版本。但它不是率先次接纳 Node.js 的顾客的特级框架。

GitHub stars:13,022
GitHub contributors:92

功能

皇家赌场网址,10. Hapi

Node.js 的服务器框架。Hapi 是二个用来营造基于 Node.js 的选用和劳动的富框架,使得开垦者把爱抚放在便携可接受的应用逻辑并非营造架构。内建输入验证、缓存、认证和其他Web 应用开荒常用的功力。

此框架是高效塑造和 API 测量检验的爱不忍释选用,你也足以动用 Hapi 创设风度翩翩体化的网址。它有贰个高大的插件会集,使其可以在大器晚成部分工作,而不破坏别的的代码库。十分适用于组织合营项目。

出于 Hapi 是由Walmart的开荒职员创设,由此它提供了集团级成效。

GitHub stars:7,100
GitHub contributors:151

原来的文章链接:
作者:开源中黄炎子孙民共和国 – 局长
转发必得在正文中标注并保留原作链接和笔者等新闻

该框架提供了以下职能:

  • Web 服务规范扶持:CXF 扶助以下 Web 服务典型:
    • Java API for XML Web Services (JAX-WS)
    • SOAP
    • Web 服务描述语言(Web Services Description Language ,WSDL)
    • 音讯传输优化学工业机械制(Message Transmission Optimization Mechanism,MTOM)
    • WS-Basic Profile
    • WS-Addressing
    • WS-Policy
    • WS-ReliableMessaging
    • WS-Security
  • 前端建立模型:CXF 提供了前面八个建立模型的定义,允许你使用差别的前端 API 来创建 Web 服务。API 允许你使用简易的厂子 Bean 并由此 JAX-WAS 完成来创建 Web 服务。它还允许你创造动态 Web 服务顾客端。
  • 工具援救:CXF 提供了用来在 Java Bean、Web 服务和 WSDL 之间开展转移的两样工具。它提供了对 Maven 和 Ant 集成的扶持,并无缝地支撑 Spring 集成。
  • RESTful 服务支持:CXF 支持代表性状态传输(Representational State Transfer,RESTful )服务的概念,并支持 Java 平台的 JAX-LacrosseS 实现。(本种类的第 2 局地将提供有关 RESTful 服务的越多音信。)
  • 对两样传输和绑定的支撑:CXF 帮忙分歧等级次序的传输,从 XML 到逗号分隔值 (CSV卡塔尔。除了协助 SOAP 和 HTTP 合同绑定之外,它还帮助Java Architecture for XML Binding (JAXB卡塔尔(قطر‎ 和 AEGIS 数据绑定。
  • 对非 XML 绑定的帮衬:CXF 支持非 XML 绑定,譬喻 JavaScript Object Notation (JSON卡塔尔 和 Common Object Request Broker Architecture (CORBA卡塔尔国。它还援助 Java 业务合併(Java Business Integration,JBI)种类架会谈劳动组件体系构造(Service Component Architecture,SCA)。

 

回页首

开发 Web 服务

上面让大家浓烈地钻研一下如何行使 JAX-WS 前端创造订单管理 Web 服务,然后将其登记为 Spring Bean。您将利用代码优先方法,那表示你将第意气风发支付三个 Java 类,并将其标记为 Web 服务。为此,您经常要实践以下步骤:

  1. 创办服务端点接口(service endpoint interface,SEI),并定义叁个将公开为 Web 服务的办法。
  2. 创制完毕类,并将其标明为 Web 服务。
  3. 创建 beans.xml,并行使 JAX-WS 前端将该服务类定义为 Spring Bean。
  4. 创建 web.xml 以集成 Spring 和 CXF。

首先让大家创制订单管理 Web 服务 SEI。

成立订单管理 Web 服务 SEI

始建名叫 OrderProcess 的 SEI,它将装有一个格局 processOrder,此方式选择一个订单 Bean 并回到二个字符串。processOrder 方法的目标是拍卖顾客所下的订单,并赶回唯生机勃勃的订单 ID。

清单 1. OrderProcess SEI

本文由68399皇家赌场发布于集成经验,转载请注明出处:可用于你的下一个项目,API开发框架

关键词: Koa php Node.js 简易 框架

最火资讯