书生商友信息科技拥有旗下品牌。该品牌上往专业为您提供多种网站相关服务,包括网站建设、网站制作、做网站、网站设计、网站优化等。同时,还提供全方位、一站式的电子商务综合解决方案。涵盖企业网站制作、企业做网站、企业建网站、企业网站设计、企业网站优化等内容,还有响应式网站以及地区网站设计。
服务热线: 手机微信同号:(各城市商务人员可上门服务)
如皋有企业微信公众号小程序开发公司。如皋存在企业网页设计方案。如皋的做网站开发价格是多少呢?如皋有微信公众号制作运营报价明细表。如皋的网站设计公司费用是多少?如皋的网站推广大概需要花费多少钱?
如皋市,被简称为“如”或者“皋”。它是江苏省辖的县级市,由南通市代管,还是江苏省的历史文化名城。此地地处长江三角洲的北翼,处在南通、泰州、苏州这三个市的交界处。南边与张家港市隔着长江遥遥相望,北边与海安市相连,东边与如东县相接,东南边与南通市通州区相邻,西边与泰兴市接壤,西南边与靖江市相靠。全市的总面积为 1477 平方公里(不包含长江水面),长江水面的面积是 99 平方千米。如皋的长江岸线总长度为 48 千米。其中,能够直接加以利用的长江深水岸线达到了 18.6 千米。
如皋市获国际自然医学会评定为世界六大长寿乡之一。如皋市的户籍人口约为 142 万。在 2021 年 1 月 1 日这个时间点,全市 80 周岁以上的高龄老人有 68031 人,90 周岁以上的高龄老人有 10150 人,百岁老人达到 525 位,其中 105 岁以上的有 16 位。
2019 年 10 月 8 日,如皋被评为 2019 全国营商环境百强县。2020 年 12 月,社科院发布了《全国县域经济综合竞争力 100 强》这一报告。在这份报告中,如皋的排名是第 31 位。
接口服务的定义
在实际项目开发时,我们编写的绝大部分接口都是供其他开发工程师使用的,像客户端开发人员、前端开发人员以及其他后端系统开发人员等。为提升并行开发的速度,我们不能等接口服务开发完毕后才给出相应接口文档,而要尽早提供详细描述了接口服务定义的接口文档。
所以,开发人员在使用接口服务时,时常会有这样的疑问:在什么时候能够提供接口文档呢?
我们提倡“接口先行”。这意味着接口服务应当在使用方使用之前就完成开发并且通过自测。然而,在多任务、多项目并行的情形下,要做到这一点往往很难达到百分百。因为多变的需求会促使形成多变的情境。在这种情况下,我们能够快速提供接口服务的定义。
接口服务的定义包含声明接口服务的函数签名,以及对接口服务的功能、接口参数和返回结果进行相应说明。在设计模式里,有一个很重要的原则,即“针对接口编程,而非针对实现编程”。我们所定义的接口服务,很好地体现了这一原则。一开始从关注客户端业务场景需要的角度出发,在规约层面明确接口服务的功能,同时明确相关的签名、参数以及返回结果,并且不会对实现的细节进行深入地探讨和展开。
在中定义一个接口服务,具体过程为:
以下以在 Shop 商城项目里添加获取商品快照信息服务作为例子来进行讲解。
假设此获取商品快照信息的服务名称为“Goods”。首先,在 Shop 项目的 Api 层创建一个新的类文件。接着,在这个新类文件中添加一个继承自的接口服务类。之后,再添加一个成员函数::()。
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="代码无行号 prettyprint prettyprinted" style="box-sizing: border-box; overflow: auto; font-family: Courier, "Courier New", monospace; font-size: 0.9em; padding: 10px 10px 10px 30px; margin-top: 0px; margin-bottom: 1.1em; line-height: 1.42857; color: rgb(51, 51, 51); word-break: break-all; overflow-wrap: break-word; border: 0px; border-radius: 4px; position: relative;">//$ vim ./Shop/Api/Goods.php<?phpclass Api_Goods extends PhalApi_Api {
通过执行特定的代码逻辑来实现相应的效果。
}}复制代码</pre></p>
接口服务的功能能够在成员函数的标准文档注释里进行说明,同时可以借助@desc 注解来进行详细的说明。具体如下:
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="代码无行号 prettyprint prettyprinted" style="box-sizing: border-box; overflow: auto; font-family: Courier, "Courier New", monospace; font-size: 0.9em; padding: 10px 10px 10px 30px; margin-top: 0px; margin-bottom: 1.1em; line-height: 1.42857; color: rgb(51, 51, 51); word-break: break-all; overflow-wrap: break-word; border: 0px; border-radius: 4px; position: relative;"> /**
* 获取商品快照信息
* @desc 获取商品基本和常用的信息
*/
public function snapshot() {
}复制代码</pre></p>
前面所说的接口参数规则配置,其参数规则的配置需要在::()成员函数中进行。假设这里只需要一个商品 ID 的参数。
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="代码无行号 prettyprint prettyprinted" style="box-sizing: border-box; overflow: auto; font-family: Courier, "Courier New", monospace; font-size: 0.9em; padding: 10px 10px 10px 30px; margin-top: 0px; margin-bottom: 1.1em; line-height: 1.42857; color: rgb(51, 51, 51); word-break: break-all; overflow-wrap: break-word; border: 0px; border-radius: 4px; position: relative;">公共函数 getRules() 。
return array(
具体的内容和用途取决于使用它的上下文和相关的程序或系统。
'desc' 为 '商品ID'。
),
);
}复制代码</pre></p>
最后,要对接口返回的结果结构以及字段进行说明。这部分内容是在成员函数的标准文档注释里进行说明的,并且要遵循@注解的格式。假设此快照服务所返回的结构格式和字段为如下情况:
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="代码无行号 prettyprint prettyprinted" style="box-sizing: border-box; overflow: auto; font-family: Courier, "Courier New", monospace; font-size: 0.9em; padding: 10px 10px 10px 30px; margin-top: 0px; margin-bottom: 1.1em; line-height: 1.42857; color: rgb(51, 51, 51); word-break: break-all; overflow-wrap: break-word; border: 0px; border-radius: 4px; position: relative;"> /**
* 获取商品快照信息
返回的是一个整数类型的商品 ID 。
@return 字符串,goods_name 即商品名称。
返回值为整数,其中包含商品价格。
@return 为 string 类型的 goods_image,即商品图片。
*/
public function snapshot() {
}复制代码</pre></p>
我们完成了获取商品快照信息服务的最初形态,也就是完成了对这个接口服务的定义。可以简单地尝试进行一次请求:
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="代码无行号 prettyprint prettyprinted" style="box-sizing: border-box; overflow: auto; font-family: Courier, "Courier New", monospace; font-size: 0.9em; padding: 10px 10px 10px 30px; margin-top: 0px; margin-bottom: 1.1em; line-height: 1.42857; color: rgb(51, 51, 51); word-break: break-all; overflow-wrap: break-word; border: 0px; border-radius: 4px; position: relative;">使用 curl 命令访问 "http://api.phalapi.net/shop/?service=Goods.Snapshot&id=1" ,返回的结果为 {"ret":200,"data":null,"msg":""} 。</pre></p>
可以看到上面所定义的接口服务是能够进行访问的。由于尚未进行具体的实现,所以当下暂时不会有业务数据返回。
我们要把这个接口服务链接提供给使用方吗?答案是要提供,但不是全部。我们最终要提供给使用方的是在线接口服务说明文档。完成上面这 4 个步骤后,我们会看到一份在线接口服务说明文档,这份文档很酷、很实用,并且是自动实时生成的。
如皋企业微信公众号小程序开发公司、如皋企业网页设计方案、如皋做网站开发价格、如皋微信公众号制作运营报价明细表、如皋网站设计公司费用、如皋网站推广大概需要多少钱
书生商友信息科技旗下品牌:上往专业为您提
服务热线: 手机微信同号:(各城市商务人员可上门服务) |