2024.01.10 21:13
「项目接口管理」 建设项目界面管理的含义是什么? 爱问知识人
文章来源:顺利加盟网
项目接口管理: 建设项目界面管理的含义是什么? 爱问知识人 (1)界面的含义 从起源看,界面首先出现在工程技术领域,更多地被称为接口,也有人称之为“结
项目接口管理: 建设项目界面管理的含义是什么? 爱问知识人
(1)界面的含义 从起源看,界面首先出现在工程技术领域,更多地被称为接口,也有人称之为“结合部”,是子系统之间既相互区别又相互联系的纽带,它们既可以是有形的,也可以是无形的。 建设项目界面管理中的界面可以定义为:为实现建设项目目标,建...展开全部
项目接口管理: 工程设计与外部协作接口管理有哪些主要内容? 爱问知识人
(1)工程设计与外部协作接口管理的主要内容: 1)对工程设计中拟采用的超出现行技术标准的新技术、新材料、新工艺、新设备组织开展科研试验和成果评审,确定采用的方案; 2)负责外部协作条件的取证; 3)办理环境影响防治或整治措施、水土保持设计...
项目接口管理: 接口风险和挣值管理定义是什么
项目的挣值管理(Earned Value Management,EVM),是用与进度计划、成本预算和实际成本相联系的三个独立的变量,进行项目绩效测量的一种方法。它比较计划工作量、WBS的实际完成量(挣得)与实际成本花费,以决定成本和进度绩效是否符合原定计划。 ...展开全部
项目接口管理: crapapi 接口管理 有什么用
API(ApplicationProgrammingInterface)自动化测试是软件测试中最基本的一种类型。API就像建造大楼的砖块,程序开发人员通过运用一定规则将"砖块"放在一起来构造程序,从本质上来说,API测试是用来验证组成软件的那些单个方法的正确性,而不是测试...展开全部
其他答案:<p>hdmi高清线到底是干啥的(干什么用的)?请看下面的介绍!</p> <p> </p> <p><img src=" <p> </p> <p>hdmi,高清晰度多媒体接口(英文:high definition multimedia interface)是一种全数位化影像和声音传送接口,可以传送无压缩的音频信号及视频信号。hdmi可用于机顶盒、dvd播放机、个人电脑、电视游乐器、综合扩大机、数位音响与电视机。hdmi可以同时传送音频和影音信号,由于音频和视频信号采用同一条电缆,大大简化了系统的安装。 </p> <p> 简单的讲,就是hdmi能克服vga、dvi等接口,音频视频数据无法通过一根线传输的问题,hdmi规格的连接器采用单线连接,取代了产品背后的复杂的线缆。采用hdmi规格接口的线缆没有长度的限制。比如:dvi的线缆长度不能超过8米,否则将影响画面质量,而符合hdmi规格的产品则没有这个问题。hdmi规格可搭配宽带数字内容保护(hdcp),以防止具有著作权的影音内容遭到未经授权的复制。hdmi不仅可以满足目前最高画质1080p的分辨率,还能支持dvd audio等最先进的数字音频格式,支持八声道96khz或立体声192khz数码音频传送。</p> <p>hdmi 高清线材与接口普及篇<br><a href=" target="_blank"> <p> hdmi在笔记本上面的应用,主要是适用于笔记本与平板电视的连接,hdmi可以利用笔记本的强大处理能力,将1080p的高清画面以及高质量音频直接传输给平板电视,从而远离笔记本屏幕尺寸过小的尴尬。</p> <p>高清dv上的hdmi接口基本成为标配</p> <p>家用高清dv的普及速度很快,除了早期生产的高清dv外,目前无论是使用磁带的hdv数码摄像机产品,还是使用硬盘、闪存或光盘的高清dv机,绝大多数都有一个hdmi接口。通俗的说,对于我们使用者来讲hdmi的最大好处,是只需要一条hdmi线,就可以把高清dv上的高清视频和声音,送到高清平板电视上或其他有hdmi输入接口的设备上,而无需和以前使用普通dv格式的数码摄像机那样,要通过一条视频线加两条音频线接到电视上,或是通过多条分量线加音频线才可以在电视上播放拍摄的内容。 </p> <p>平板电视机上的hdmi接口</p> <p>平板电视机上一般有多个hdmi接口,可以连接多个hdmi相关的设备,比如高清dv、数字功放等。实际使用时,我们根据自己的实际情况,购买一条适当长度的hdmi线,一般米左右就可以,不用复杂的设置,只需用hdmi线将高清dv与电视连接起来,在电视机上选好hdmi输入口,开启高清dv就可以在大屏高清电视上欣赏自己拍摄的视频了。</p> <p> </p> <p><img src=" <p> </p> <p><img src=" <p> </p> <p><img src=" <p> </p> <p><img src=" <p><img src=" src=" src=" <p> </p> <p><img src=" src="
其他答案:在开始之前,我们先来简单了解一下什么是API以及它用在哪里。通俗的讲,API就像是互联网上面的一个个拥有特定功能的门,互联网上面所有的数据通信都是通过API的方式来完成的。我们只需要知道特定的门的门牌号(网络地址)以及开门的方式(请求的方式),理论上来讲就可以非常方便地获取任何你想要的数据或者是服务。其中最常见的第三方接口有短信验证码、物流信息查询、天气查询等等。相信即使自己没有做过开发,也能理解接口的用途了,它就是获取网络数据和服务的最简单的方式。 来自IBM的预计数据,到了2018年,全球的API经济规模将超过万亿美元,这里有一个对比是2016年的中国农业总产值是接近1万亿美元,也就是在1年之后,全球的API经济的规模将会是接近2倍的中国农业总产值。 在这里为了分析接口市场,我简单地把它分为上中下游:上游是各类数据源企业,也就是拥有非常庞大的数据量或者顶尖的技术,可以直接对外提供数据或者服务的企业或者组织。中游则是通过获取上游的数据,对数据进行分析处理,增加这些数据的附加值在对外输出的企业。下游则是直接使用中游提供的接口,在上面做各类的组合进行商业变现的企业。 在这条产业链中,上中下游的企业的数据交互是通过接口完成的,对外提供服务的方式也是通过接口,因此其中就有一些可以切入的商业机会。 那么到底接口管理的价值体现在哪里呢,其实就体现在企业的接口本身其实就已经是一个资产,而接口管理是帮助企业更好地去开发和使用这些资产的平台。 早在2014年,全球的API数量就已经超过了100亿,互联网的发展背后,其实是网络上可以进行数据交互的接口变多了,连接也更加频繁,可以说接口数量,接口市场的规模和互联网的发展是紧密相关的。 在这么一个背景下,我们发现以往的接口开发、测试和管理的方式已经跟不上互联网的发展速度了。如何更快更好地去开发、测试以及使用接口,也慢慢成为许多互联网企业的痛点。 那么通过接口管理产品,可以非常快速地帮助企业对项目的接口进行管理,文档、测试到团队协作甚至到生成代码都可以在上面解决。这就是我们帮助企业实现的第一个价值,降低企业的开发成本。 但是,光是帮助企业降低开发成本还是不够的,我们也发现越来越多的企业会开始开放自己的接口,希望从一个API产业链下游的企业变成一个上游的企业,因此接下来我们也会开始为这部分的企业赋能。 国内的话推荐使用eolinker接口管理平台,性价比较高。上面的文章摘自他们的博客,感觉写的挺好的,可以参考一下。
项目接口管理:做api接口管理yapi和showdoc哪个好?为什么?
推荐YApi做接口管理平台!
下面说说为什么要用YApi做接口管理平台。
前言
随着 Web 技术的发展,前后端分离构架变的越来越流行。前后端分离使后端专注于数据处理和定义前端所需要的接口,前端负责数据的展现和交互,大大细化了开发者的职责,提高了开发效率,但与此同时也带来了一些问题:
对于前端工程师,后端提供的接口文档,大多是不规范的,有使用 wiki 的,有 word 文档的,甚至还有用即时聊天软件沟通的,后端接口对于前端就像一个黑盒子,经常遇到问题是接口因未知原因增加参数了,参数名变了,参数被删除了。对于后端工程师,接口对接时总是需要写冗杂繁琐的文档,需要大量时间去维护接口文档。
前端开发的功能在后端功能还没完成前,因为前端的功能依赖于后端的数据,导致工作无法顺利展开。为了解决这个问题,有些前端工程师在代码注入 json,还有后端工程师临时搭建一套测试数据服务器,这种情况下势必会影响工作效率和代码质量,也不能及时进行字段的更新。
接口数据正确性无法得到保证。前端调用后端的接口数据渲染到 视图,数据一旦出错,将会导致视图和交互也出现问题,保证后端接口数据正确性变的愈来愈重要。接口自动化测试就是用来解决这个问题,但传统的接口测试框架使用成本很高,很多团队采用肉眼比对方式,效率很低。
相关产品调研
Nei 是网易前端事业部的产品,在这些产品中算是做得比较好的, nei 是专注做 saas 服务这块,没有开源版本。对于去哪儿内部,肯定不会把公司机密的接口数据放到第三方平台。
Rap 是阿里妈妈 MUX 团队2013年出的一款产品,从时间上看是同类产品中最早的。Rap 是后端工程师基于 java 开发的,如果想定制部分功能,还需要学习 java,而我们部门大家对 java 都不熟悉。另一方面 Rap 没有接口测试功能,而后端使用其他工具(postman, restlet)测试接口,将导致不能及时更新接口文档。
Easy-mock 是大搜车无线团队出的一款产品,Easy-mock 定位是接口数据的模拟,解决前端依赖后端接口数据的问题,在同类产品中 mock 服务做得比较好。Easy-mock 专注于前端数据的模拟,但无法解决去哪儿现有的问题。
Nei,Rap 接口管理平台共同存在的问题是不易维护接口返回数据。笔者曾跟一个使用过 Rap 的后端工程师聊过,他说每次定义后端接口返回数据字段,好几个百个字段需要更新很长时间。Nei,Rap 是基于维护一个 json-schema 方式定义后端返回数据结构,我们假设某个接口有100个字段,如果基于 json-shema 那么就要维护差不多 600 多左右字段的更新。这么大工作量的,很可能导致后端工程师根本没有动力去维护。
比较遗憾的是,这几款优秀的产品,都缺失了一些我们在意的关键特征。我们可能需要做比较大的改动才能够基本满足自己的需求,这个工作量很有可能会超过重新开发一次。所以我们开始自主研发一个全新的接口管理平台,我们希望它能够提供接口文档管理,接口数据模拟(Mock),接口调试,自动化测试等功能,让前后端接口相关的工作进行的更加高效。这就是 YApi 接口管理平台斐然由来,下面简要聊聊 YApi 是如何实现上述这些特征的。
YApi 解决方案
1. 共同维护一份接口定义,连接前后端
大家看下图,在后端开发接口过程中,接口开发和测试接口这是必不可少的环节,但文档因为没有跟接口开发和测试联系到一起,被孤立。后端要维护对于他们冗杂繁琐的文档,是件收益很低的事情。没有人喜欢做收益低的事情,所以最终的解决办法就是要提高收益。下面详细说明解决方案。
在接口开发过程中,后端通常都会使用 postman 等类似的工具测试接口,而测试接口是在开发过程中一个必要的过程。假如参数有改动,大家肯定会在 postman 等工具上更新字段和测试接口。由此可以联想到,
如果能有一款工具既可用来做测试接口,又能作为接口文档工具,将接口文档和接口测试连接到一起,不就解决了此问题。YApi 解决方案是将接口文档和测试通过单一数据源连接到一起,如果有改动,因为改的是单一的数据源,就不会出现更新滞后和不及时问题。
2. 前端 Mock Server 方案
数据 Mock 服务在开发前期是非常头疼的一个问题。大多数情况下,接口请求参数和返回数据都是后端规定的,在后端接口没有完成之前,接口对于前端就是一个黑洞,可能最初对接口的定义跟实际后端做出的接口会有非常大的不同。这个时候就需要有一个工具,不仅能模拟真实接口的情况,还能关联接口文档,在后端开发过程中,可以随时调整接口定义,并通知给前端开发者改动信息。
在 YApi 平台,前后端只要维护接口定义的响应数据,就可以生成需要的模拟数据,下面这段代码定义了生成数据模板:
可生成如下的模拟数据:
以往的数据 mock 方案难免会影响项目源码,yapi 使用了服务器代理的方案,只需要在你的开发机做下服务器反向代理配置,不用修改项目一行源代码,即可获取到所有的 mock 数据。
基础的 Mock 工具已经能满足大部分的需求了,但有些复杂场景是无法实现的。例如:当我做一个数据列表页面,需要测试某个字段在各种长度下的 ui 表现,还有当数据为空时的 ui 表现。YApi 提供了期望和自定义脚本的功能。
本文主要介绍自定义脚本功能,期望功能可参考 yapi 平台文档。
自定义脚本可根据请求的参数,cookie 信息,使用 js 脚本自定义返回的数据。我们假设有个场景,我希望通过 cookie "_type" 控制列表页面数据显示,假设 _type 是 error,那么列表显示异常错误信息;假设 _type 是 empty ,列表显示为空。可使用下面代码实现:
3.自动化测试
接口开发完成后,后续的迭代是非常多的,每次对源码的修改,都需要大量的测试才能确保接口是否正确。人工判断肯定是不好的,最好的办法是做成自动化,但自动化测试又是一件成本非常高的事情,需要后端人员和QA人员学习相关的框架,和写大量的代码。YApi 简化了这一个过程,基于一个可视化界面,就算不懂程序开发,只需配置相关的参数和断言语句,就能实现自动化测试,非常的易用。
除了基本的功能外,YApi 还提供了强大的 pre-script 和可视化表达式功能,pre-script 包括请求参数处理脚本和响应数据处理脚本两部分。通过自定义 js 脚本方式改变请求的参数和返回的 response 数据。他的使用场景如下:
接口请求参数需要加密及返回 response 解密
接口请求参数需要添加计算 token
可视化表达主要是为了方便用户生成自动化测试所用到的参数,通过一个树形选择性,快速引用所依赖的参数值。
在所有的需要测试的接口配置完成后,点击开始测试,就会按照指定的顺序依次测试所有接口,测试完成后,可查看测试报告。
4.插件机制
YApi 最强大的一点莫过于他的插件机制,我们去哪儿各个业务线有不同的需求,通过 YApi 预留的钩子,开发不同的插件解决,比如我们现有的 qsso 登录,swagger 数据导入就是通过插件机制实现的,我们团队最近还在跟业务部门讨论使用插件实现压力测试功能等。总得来说,YApi基于插件机制,既满足了产品需求的多样性,又保证了内核足够易用和简洁。
5. 开源和易部署
为了帮助更多开发者和提升大家的工作效率,YApi 不仅开源到 github,还提供了一个 cli 工具方便广大开发者部署。使用 yapi-cli 提供的可视化部署方案,即便你不懂任何 nodejs、mongodb 的知识,也能轻松一键部署。
后记
YApi 已在去哪儿大面积使用,对 200+ 项目接口进行管理,每周有上万次 mock 请求。在开源以后,越来越多的公司和团队使用 YApi, github star 数已经上升到 了。YApi 在未来还将继续专注于接口管理方面的功能,让 YApi 成为各位开发者的好帮手。
demo 站点:
github:
项目接口管理:多方机构进行接口需要做哪些工作?
在测试负责人接受到测试任务后,应该按照以下流程规范完成测试工作。
测试需求分析
产品开发负责人在完成某产品功能的接口文档编写后,在核对无误后下发给对应的接口测试负责人。测试负责人拿到接口文档需要首先做以下两方面的工作。一方面,测试人员要对接口文档中各个接口的功能以及接口中涉及的各个字段的意义和用途进行理解。另一方面,测试人员也应该充分与开发人员交流,理解清楚每个接口用到协议以及各个字段的取值规范和范围。
各测试人员编制完成测试案例后,需要提交给测试组长审核或参加测试组长组织的案例评审会对案例进行评审,案例审核合格后才可开始后续的工作。
因为考虑到敏捷测试时间的紧迫性,需求分析可从开发召开kickoff会(T-7)时开始介入。
制定测试计划
接口测试负责人与测试组长或者项目经理沟通测试计划安排。单独一个接口文档涉及的接口过多时,由测试组长按照接口功能的相关性以及复杂性划分接口分发给不同的测试人员进行测试,并制定测试时间以及每日测试工作量。
设计测试案例
接口测试任务划分后,对于接口的测试负责人需依据接口文档,编写接口测试案例,并明确哪些案例可以实现自动化,哪些案例需要手工测试。为后续的编制自动化测试脚本提供指引,保证测试的全面性。案例需要做到覆盖所有的测试要点,并针对某些特殊的接口,要考虑到接口的特殊性,编制有针对性的测试案例。
测试案例编写完成后,要进行案例评审,评审通过才可执行测试工作。
测试环境的准备
接口测试所需的自动化工具JMeter安装、java环境配置等由测试人员自己负责完成。接口测试所需的后台环境,若无单独的测试环境,需要在开发环境上测试的情况,环境由对应的开发负责人负责维护,开发负责人需要配合测试人员,保证环境的稳定以及测试版本的正确。若有单独的测试环境,测试环境维护人员需要从开发经理那获取最新的测试版本部署在测试环境上,并维护好初始的参数配置以及初始测试数据。
实施测试
在前期准备工作完善后,按照计划就可以实施测试了。测试实施上建议优先进行手工测试,把所有接口的案例手工测试一遍,这样一方面可以加强测试人员对接口各个细节的理解,另一方面可以快速发现接口存在的bug,及时反馈给开发人员进行修改。待主要bug开发已经解决,接口各字段配置已经稳定的情况下开展自动化脚本录制、编写等工作,对能够实现自动化测试的案例要编制测试脚本,并按照脚本编写规范,组织好脚本的结构,方便后期的脚本维护和管理。脚本编写规范参考下面的脚本编写规范章节。
在测试阶段根据测试情况、测试出的缺陷情况以及对接口的理解加深,可能会对测试案例进行补充或修改,需要测试人员及时维护好测试案例,保证每个案例的准确,方便后期回归测试。
对各个接口测试完成后,提交测试报告。并对测试相关的文档进行整理总结。
测试成果评审
该阶段为测试的最后阶段,测试组长负责组织测试成果评审会议。会议上依次对每个测试人员的成果物(包括案例、测试脚本、bug单、测试报告等测试产出物)进行评审。发现问题和不足及时纠正,规范测试工作。评审通过的测试成果物注意汇总保存,形成公司测试资产的一部分。
测试过程的持续优化
在接口自动化测试进行一段时间后,要定期对测试情况进行总结。对发现的问题进行改进,对测试指南进行完善,对测试的流程进行持续的优化。
接口测试相关文档管理规范
测试文档范围
接口自动化测试主要需要管理的文档类型如下:
接口说明文档、测试用例文档、测试报告(结果)文档、测试脚本(jmx类型)、会议纪要、评审文档等测试相关文档。
测试文档创建说明
需求类的文档(如:接口说明文档)在测试初期由开发提供给测试人员,测试人员依据接口文档编写用例,文档不规范的地方需要及时向开发反馈,督促修改提供规范的接口文档。
测试用例文档是在测试人员拿到接口说明文档后,理解好需求即开始编写该文档,后期会经过评审不断的对测试用例文档进行优化。完成测试用例文档编写后,即可开始测试脚本的编制,脚本编制用例的依据来自测试用例文档。
测试脚本是在测试人员执行测试过程中形成的测试产出,要求脚本编写要符合该文档下面对脚本编写的规范要求,这样方便后期的脚本维护和管理。
测试报告文档是测试人员在完成测试后,对该阶段测试结果的一个总结性报告,要求按照公司提供的规范模板编写,并提交给测试组长审核,审核无误后发给对应的产品或项目的开发、业务、领导等相关人员。
会议纪要、评审文档等文档是在整个测试过程中依据项目的需要产生的,这些文档可以划归到需求文档中,用作指导和规范测试人员的测试工作。
测试文档归档要求
测试任务结束后,测试人员都需要整理各种相关测试文档,上传到SVN服务器相应目录下。形成整个测试组的测试资产。要求每个测试人员重视该环节,测试结束后必须归档各类测试文档。
强烈建议每个地区的测试组有自己的SVN管理目录,测试人员在完成项目或产品的测试中,因为产品或项目都有自己的SVN目录,测试过程中,开发经理也会要求如测试用例、测试报告等测试文档上传到对应项目的SVN上。但测试结束后,测试人员还需把最后的完整的测试相关文档(接口说明文档、测试用例文档、测试报告(结果)文档、测试脚本(jmx类型)、会议纪要、评审文档等)按类型归档到自己测试组下的SVN管理目录,使测试文档受控于测试组的管理,形成测试组自己的资产。
下面举例说明一下测试组的测试文档归档要求,其他地方测试组可以进行参考,依据自己项目的情况整理归档测试文档。
接口测试要点
接口可用性
接口可用性主要测试接口是否可用、接口是否存在、接口的协议类型,测试案例中应包括:
〖R1〗 依据接口文档中给定的接口地址和协议方法能够访问到该接口。
〖R2〗 使用错误的协议方法无法按照接口地址进行访问。
〖R3〗 使用正确的协议方法无法按照错误的接口地址进行访问。
输入输出参数个数及命名
输入输出参数个数及命名主要测试接口包含的输入输出参数的个数以及各个参数的命名是否正确,测试案例中应包括:
〖R1〗 依据接口文档检查输入参数的个数以及命名是否和文档一致。
〖R2〗 依据接口文档检查输出参数的个数以及命名是否和文档一致(注意检查输出的正常参数和异常参数)。
〖R3〗 输入错误的参数名,接口会报错,并有错误信息返回。
输入参数的必输项
输入参数的必输项主要测试接口对输入参数的可选与必输的要求,测试案例中应包括:
〖R1〗 按照接口文档对所有必输的输入项依次不输入,检查接口是否给予报错信息返回。
〖R2〗 按照接口文档对所有选输的输入项依次检查是否可以不输入参数接口也有正确数据返回,无报错信息。
输入参数的合法性
输入参数的合法性的合法性主要对参数的录入规范要求进行检查,测试案例中应包括:
〖R1〗 依据接口文档,有明确的要求的(如:只能由数字组成、在以下几个可选值中选择、只能由字母组成、长度最多为多少、格式为时间格式)输入参数,检查是否符合这些要求。
〖R2〗 依据接口文档,没有明确要求的输入参数,依次测试长度超长、含有特殊字符、全角半角等情况。检查接口是否报错,给予错误返回信息。
输出参数内容的正确性
输出参数内容的正确性主要对输出参数的内容是否和后台真实数据一致进行检查,测试案例中应包括:
〖R1〗 考虑多种输入参数的组合情况,依次测试在这些组合情况下接口返回的数据的各字段内容是否正确,要具体检查每个字段的内容。一般通过与后台数据库数据比较来进行检查。
〖R2〗 考虑多种输入参数的组合情况,依次测试在这些组合情况下接口返回的数据中涉及输入参数的项,是否和最初输入的值一致。
接口实现功能验证
接口实现功能验证主要对接口操作的具体功能是否正常运转进行检查,测试案例中应包括:
〖R1〗 输入正确的参数,检查接口对应的要实现的后台功能是否正确运转。例如:对一个启动接口发送启动的命令,接口对应的后台系统能够正确启动并返回正确的参数。
〖R2〗 输入错误的参数,检查接口对应的要实现的后台功能是否没有运转。
接口文档规范性
接口文档规范性主要对开发提供的接口文档是否规范准确进行检查,测试案例中应包括:
〖R1〗 接口文档中对于输入输出参数都有准确的命名,不存在模糊的情况。
〖R2〗 接口文档对于每一个参数都有明确的类型说明,是否可选还是必输,是否有默认值。
〖R3〗 接口文档对于每一个输入参数都要明确好基本的录入条件,比如长度最长多少、只能为数字还是字母、不能含有特殊字符等。
〖R4〗 针对一个接口如果有多种类型的输出参数组合且参数的命名或个数有不同,这种情况,要在接口文档中罗列清晰,并明确指出出现这种类型的输出参数的条件。
项目接口管理:vue中Axios的封装与API接口的管理详解?
首先,在自己建的公用方法的文件中new一个新的文件。以下为的内容:var axios = require('axios')// 配置项目根如路径var root = 'http://localhost:8090/manage'// axios请求function httpApi (method, url, params) { return new Promise((resolve, reject) => { axios({ method: method, url: url, data: method === 'POST' || method === 'PUT' ? params : null, params: method === 'GET' || method === 'DELETE' ? params : null, baseURL: root, withCredentials: false }).then((response) => {resolve(response)}).catch((error) => {reject(error)})})}// 返回在vue模板中的调用接口export default { get: function (url, params) { return httpApi('GET', url, params)}, post: function (url, params) { return httpApi('POST', url, params)}, put: function (url, params) { return httpApi('PUT', url, params)}, delete: function (url, params) { return httpApi('DELETE', url, params)}}
文章来源:顺利加盟网
风险提示及免责条款
[温馨提示] 文章来源于顺利加盟网,转载注明原文出处,此文观点与查生意无关,理性阅读,版权属于原作者若无意侵犯媒体或个人知识产权,请联系我们,本站将在第一时间删掉 ,查生意仅提供信息存储空间服务。


