发表日期: 2021-04-26 09:38:17 浏览次数:85
如皋企业微信公众号小程序开发公司、如皋企业网页设计方案、如皋做网站开发价格、如皋微信公众号制作运营报价明细表、如皋网站设计公司费用、如皋网站推广大概需要多少钱
如皋市,简称“如”或“皋”,江苏省辖县级市,由南通市代管,江苏省历史文化名城。地处长江三角洲北翼,位于南通、泰州、苏州三市交界处,南与张家港市隔江相望,北与海安市、东与如东县连接、东南与南通市通州区毗邻,西与泰兴市、西南与靖江市接壤。全市总面积1477平方公里(不含长江水面),长江水面99平方千米。如皋长江岸线全长48千米,可直接利用长江深水岸线18.6千米。
如皋市被国际自然医学会评为世界六大长寿乡之一。 [1] 如皋市户籍人口约142万。截至2021年1月1日,全市80周岁以上高龄老人68031人,90周岁以上高龄老人10150人,百岁老人达525位,其中105岁以上达16位。 [2]
2019年6月17日,如皋被中华人民共和国住房和城乡建设部选取作为开展规范城市户外广告设施管理工作试点城市。 [3] 2019年10月8日,被评为2019年度全国综合实力百强县市、2019年度全国绿色发展百强县市、2019年度全国新型城镇化质量百强县市、2019全国营商环境百强县。 [4-6] 2020年12月,社科院发布《全国县域经济综合竞争力100强》,如皋排名第31 [7] 。
在实际项目开发过程中,绝大部分我们编写的接口服气都是提供给别的开发工程师使用的,包括但不限于客户端开发人员,前端开发人员和其他后端系统开发人员。为了提高并行开发的速度,我们不能等到接口服务开发完成后才提供相应接口文档,而应尽早提供具体描述了接口服务定义的接口文档。
所以,使用接口服务的开发人员时常会问:什么时候可以提供接口文档?
我们提倡“接口先行”,即接口服务应该在使用方使用前就完成开发并通过自测,但往往在多任务、多项目并行的情况下很难百分百做到这一点,毕竟多变的需求促发多变的情境。此时,我们可以快速提供接口服务的定义。
接口服务的定义,是指声明接口服务的函数签名,并对接口服务的功能、接口参数和返回结果进行相应说明。在设计模式中,其中一个很重要的原则是:“针对接口编程,而不是针对实现编程”。我们在这里定义的接口服务,也正是很好体现了这一点。一开始通过关注客户端业务场景需要的视角,在规约层面定义好接口服务的功能,以及相关的签名、参数和返回结果,而不过多对实现的细节作深入地展开。
在PhalApi中定义一个接口服务,具体过程为:
1、创建接口服务类并添加成员函数
2、描述接口服务功能
3、配置接口参数规则
4、添加成员函数返回结果的注释
下面以在Shop商城项目中添加获取商品快照信息服务为例,进行讲解。
1、创建接口服务类并添加成员函数
假设此获取商品快照信息服务名称为:Goods.Snapshot,则先在Shop项目的Api层创建一个新的类文件并添加一个继承自PhalApi_Api的接口服务类Api_Goods,然后添加一个成员函数Api_Goods::snapshot()。
//$ vim ./Shop/Api/Goods.php<?phpclass Api_Goods extends PhalApi_Api {
public function snapshot() {
}}复制代码2、描述接口服务功能
接口服务的功能,可以在成员函数的标准文档注释中进行说明,并且可使用@desc注解进行详细说明。如下:
/**
* 获取商品快照信息
* @desc 获取商品基本和常用的信息
*/
public function snapshot() {
}复制代码3、配置接口参数规则
参数规则的配置,则是前面所说的接口参数规则配置,需要在Api_Goods::getRules()成员函数中进行配置,假设这里只需要一个商品ID的参数。
public function getRules() {
return array(
'snapshot' => array(
'id' => array('name' => 'id', 'require' => true, 'type' => 'int', 'min' => 1, 'desc' => '商品ID'),
),
);
}复制代码4、添加成员函数返回结果的注释
最后,需要对接口返回的结果结构及字段进行说明,这部分也是在成员函数的标准文档注释中进行说明,并遵循@return注解的格式。假设此快照服务返回的结构格式和字段如下:
/**
* 获取商品快照信息
* @return int goods_id 商品ID
* @return string goods_name 商品名称
* @return int goods_price 商品价格
* @return string goods_image 商品图片
*/
public function snapshot() {
}复制代码至此,我们便完成了获取商品快照信息服务的雏形,即完成了对此接口服务的定义。简单尝试请求一下:
$ curl "http://api.phalapi.net/shop/?service=Goods.Snapshot&id=1"{"ret":200,"data":null,"msg":""}复制代码可以看到上面定义的接口服务已经可以访问。因为还没具体实现,所以暂时没有业务数据返回。
那我们是要把这个接口服务链接提供给使用方吗?是,但不全面。我们最终要提供给使用方的是在线接口服务说明文档。请注意,在完成上面这4个步骤后,我们将会看到一份很酷、很实用、并且是自动实时生成的在线接口服务说明文档。

如皋企业微信公众号小程序开发公司、如皋企业网页设计方案、如皋做网站开发价格、如皋微信公众号制作运营报价明细表、如皋网站设计公司费用、如皋网站推广大概需要多少钱