天道酬勤,学无止境

如何将 API 版本添加到 Apiary Mock Server(How to add API version to Apiary Mock Server)

问题

有什么方法可以将 API 版本添加到 Apiary Mock Server?

例:http://private-XXXXX-apiname.apiary-mock.com/ v1 /嘲笑/ 1?学校ID = 1

回答1

是的,在声明HOST ,您可以为其附加后缀,然后将其作为前缀传播到所有资源:

FORMAT: 1A HOST: http://api.example.tld/v1/

标签

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • How to add API version to Apiary Mock Server
    Is there any way to add API version to Apiary Mock Server? Ex.: http://private-XXXXX-apiname.apiary-mock.com/v1/mocks/1?school_id=1
  • 效率专精:前后端分离实践中如何提升RestAPI开发效率【建议精读】
    团队内部RestAPI开发采用设计驱动开发的模式,即使用API设计文档解耦前端和后端的开发过程,双方只在联调与测试时耦合。在实际开发和与前端合作的过程中,受限于众多因素的影响,开发效率还有进一步提高的空间。本文的目的是优化工具链支持,减少一部分重复和枯燥的劳动。 现状梳理 前后端工作流 需求理解:前后端先理解产品思路、需求的详细内容 敲定接口:后端出API设计文档初稿,与前端面对面或者在线讨论修正,接着后端(有时是前端)把API描述记录到公司内部的API文档库(在线markdown编辑器,提供分级目录的存储功能,对如何描述API没有一定的标准,因此描述格式不统一,因人而异1)。接着根据双方工作的安排,约定联调时间 独立开发:双方独立开发(也有可能非完全独立开发,如需要对方的环境配合等;或者存在返工,如API设计发生变更等) 系统联调:测试API基本功能和双方系统的连通性 测试回归:开发或者QA编写测试用例并测试业务流程 可优化方向 1. 减少文档编写时间 根据个人的开发经验,后端编写API设计文档时常见的情况有:如果是简单的需求,API数量较少,后端直接通过内部即时通信软件和前端沟通;如果是复杂的需求,API数量较多,后端会先把API描述写到本地临时文档(纯文本、markdown、evernote等)或者内网(内部个人Wiki、git仓库)中
  • 使用httpClient.GetAsync时添加标题(Adding headers when using httpClient.GetAsync)
    问题 我正在Windows Store应用程序项目中实现由Apiary.io的其他同事制作的API。 它们显示了我必须实现的方法示例: var baseAddress = new Uri("https://private-a8014-xxxxxx.apiary-mock.com/"); using (var httpClient = new HttpClient{ BaseAddress = baseAddress }) { using (var response = await httpClient.GetAsync("user/list{?organizationId}")) { string responseData = await response.Content.ReadAsStringAsync(); } } 在这种方法和其他方法中,我需要具有一个标头,该标头带有我之前获得的令牌。 这是邮递员(chrome扩展名)的图片,其中包含我正在谈论的标头: 如何将“授权”标头添加到请求中? 回答1 当将GetAsync与HttpClient一起使用时,您可以像这样添加授权标头: httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "Your Oauth
  • 使用 Apiary 创建模拟服务 API(Create Mock Service API using Apiary)
    问题 我正在尝试创建用于测试目的的模拟 api 服务。 我们已经在另一个团队中使用 Apiary,所以我从那里开始。 到目前为止,我注意到如果我想要两个单独的调用需要模拟两个请求。 例如,要获取 ID 为 1 和 2 的注释,需要明确写出如下响应: /notes/1 /notes/2 有没有办法避免这种情况? 不可否认,我仍在努力创建蓝图。 回答1 看看 private-e9e59-pingdomcheck.apiary-mock.com/v1/gists/1。 这里的数字1是{id} 。 您当然只能得到一般定义的响应(就像我使用 id 42 一样)。 现在在 MSON 中有更多的事情要做。 一旦发布,请求中不同参数的不同回复将是可能的。
  • 方形改装服务器模拟测试(Square retrofit server mock for testing)
    问题 使用方形改造框架时,模拟服务器进行测试的最佳方法是什么。 可能的方式: 创建一个新的改装客户端,并在RestAdapter.Builder()。setClient()中进行设置。 这涉及解析Request对象,并将json作为Response对象返回。 将这个带注释的接口实现为模拟类,并使用它代替RestAdapter.create()提供的版本(不会测试gson序列化) ? 理想情况下,我想让模拟服务器提供json响应,以便我可以同时测试gson序列化。 任何例子将不胜感激。 回答1 模拟翻新2.0请求测试 由于旧的机制(例如,创建MockClient类并从Client实现它)在Retrofit 2.0中不再起作用,因此在此我描述了一种新的实现方式。 您现在需要做的就是为OkHttpClient添加自定义拦截器,如下所示。 FakeInterceptor类仅覆盖intercept方法,如果应用程序处于DEBUG模式,则返回给定JSON。 RestClient.java public final class RestClient { private static IRestService mRestService = null; public static IRestService getClient() { if(mRestService == null) { final
  • 使用 API 蓝图记录查询参数(Documenting query parameters with API Blueprint)
    问题 我正在尝试在 API Blueprint 中记录查询参数,但我不完全确定我是否正确完成了它。 资源看起来像这样: DELETE http://baasar.apiary-mock.com/user/{appId}/{userId} 该请求将停用用户,而以下内容将删除用户对象: DELETE http://baasar.apiary-mock.com/user/{appId}/{userId}?force=true 这是我为此的蓝图降价: ## User [/user/{appId}/{userId}] Handle user objects + Parameters + appId (required, number, `1`) ... Application ID (`appId`) + userId (required, number, `1`) ... Numeric `userId` of the User object to manage ### Remove an User [DELETE] + Parameters + force (optional, boolean, `false`) ... Set to `true` to remove instead of deactivate + Response 204 但是,当使用 Apiary 渲染它时
  • Create Mock Service API using Apiary
    I'm attempting to create mock api services for testing purposes. We are already using Apiary on another team so I'm starting there. So far, I've noticed that if I want to have two separate calls requires mocking out of both requests. For example to get the notes with ids 1 and 2 requires explicitly writing out responses like: /notes/1 /notes/2 Is there a way to avoid this? Admittedly I'm still ramping up on creating blueprints.
  • 如何在JUnit5中使用Mockito(How to use Mockito with JUnit5)
    问题 如何在Mockito和JUnit 5中使用注入? 在JUnit4中,我可以只使用@RunWith(MockitoJUnitRunner.class)注释。 在JUnit5中没有@RunWith注释吗? 回答1 有多种使用Mockito的方法-我将一一介绍。 手动地 无论JUnit版本(或与此相关的测试框架)如何,都可以使用Mockito :: mock手动创建模拟。 基于注释 使用@ Mock-annotation以及对MockitoAnnotations :: initMocks的相应调用来创建模拟,无论JUnit版本如何(或与此相关的测试框架),Java都可以在这里进行干预,这取决于测试代码是否最终出现在模块或模块中。不是)。 Mockito扩展 JUnit 5具有强大的扩展模型,Mockito最近在组/工件ID org.mockito下发布了一个模型:mockito-junit-jupiter。 您可以通过将@ExtendWith(MockitoExtension.class)添加到测试类并使用@Mock注释@ExtendWith(MockitoExtension.class)字段来应用扩展。 从MockitoExtension的JavaDoc: @ExtendWith(MockitoExtension.class) public class ExampleTest {
  • 是否可以将表格放在markdown文件中居中?(Is it possible to center tables in a markdown file?)
    问题 我有一张桌子: | This | Is | A | Table | | :--- | -- | - | ----: | | foo | ba | r | elbaT | 我希望表格显示在Markdown文件的中心,而不是左对齐。 我不是要对齐文本,而是要对齐整个表格本身。 我需要依靠HTML / CSS来实现自己想要的吗? 这是针对Apiary.io项目的。 回答1 如果您使用标准文档,请使用<center>标签。 蓝图 FORMAT: 1A HOST: http://www.google.com # Tables Notes API is a *short texts saving* service similar to its physical paper presence on your table. <center> | Tables | Are | Cool | |----------|:-------------:|------:| | col 1 is | left-aligned | $1600 | | col 2 is | centered | $12 | | col 3 is | right-aligned | $1 | </center> # Group Notes (...) 预习 如果您使用“新文档” ,则无法将表格居中(因为表格占据了整个列的宽度)
  • 一种不错的 BFF Microservice GraphQL/REST API 层的开发方式
    云原生(Cloud Native)Node JS Express Reactive 微服务模板 (REST/GraphQL) 这个项目提供了完整的基于 Node JS / Typescript 的微服务模板,包括生产部署、监控、调试、日志记录、安全、CI/CD 所需的所有功能。还添加了基于响应性扩展的示例,以演示如何将其用于构建微服务 API 边缘服务(edge-service)、前端的后端(BFF)或将其用作构建任何类型微服务的基础。项目地址:nxplorerjs-microservice-starter设计原则使用同类最佳的模块来创建可用于生产的微服务框架基于 12-factor app 原则没有定制代码或包装器,因此任何开发人员都可以修改/替换任何模块或实现可作为参考的实现的设计模式模块化,可替换和即插即用代码为业务 API 和微服务平台开发提供入门DevOps 准备了代码质量,单元和集成测试,自动部署。功能/特性Node JS, Express, Typescript , 依赖注入(Dependency Injection base)基于 Backpack (webpack) - 构建 , 开发 , 打包启用 Swagger - Express swagger 中间件 / Swagger UI 集成GraphQL 基于 Apollo Server 2.0,带有 JWT
  • 带飞postman使用(高级篇)
    若回看第二部分: 一文带你全面解析postman工具的使用(效率篇) 。 接下来介绍的内容是将是postman的最后一部分-高级篇 。 四. 高级功能介绍 这里所谓的高级功能,都是个人的定义,之所以称为高级,可能比前面的功能使用起来稍显复杂,且使用频率也不是很高,但是这些功能都具有一定的场景性,也就是说当你遇到了解决某一类场景的问题时,正好它也提供了这方面的功能,那么使用起来就非常的方便 。 读取外部文件进行参数化生成测试报告使用工作空间集合同步与分支管理编写接口文档mock服务监控连接数据库 1.读取文件进行参数化 测试过程中,常会遇到一个接口要验证很多的测试数据,而输入参数又都是一样的。这时我们首先就会想到数据参数化(数据驱动),在postman中也提供了数据参数化功能,它需要把数据单独的存放在一个文件中管理,然后通过读取这个文件实现所有的数据的验证。 实现步骤 。 在本地电脑创建数据文件,支持数据格式文件分别为csv和json 。在文件中分别包括参数名和数据其中,在postman中需要读取外部文件的参数名,通过参数名来获取文件中的数据;其中在不同的位置读取方式不同:在URL输入框,Params,Authorization,Headers,Body中读取数据方式为:{{参数名}}。在Pre-request Script和Tests中读取数据方式为:data
  • AngularJS 量角器 E2E 模拟(AngularJS Protractor E2E Mocking)
    问题 我有一个 Angular SPA 从节点后端检索其数据。 由于节点项目完全被测试覆盖,我想模拟 Angular HTTP 调用。 (我不想开始讨论一般的功能/烟雾测试,谢谢)。 我想要的是s.th。 像这样 Api = $injector.get('Api'); sinon.mock(Api, 'getSomethingFromServer').andRespondWith({foo: 'bar'}) assert(Api.getSomethingFromServer.wasCalledOnce); 但无论如何我都找不到好的解决方案。 我发现了几个关于同一问题的帖子。 比如这个。 由于量角器变化很大且频繁,我只想在这里询问是否有人找到了模拟 HTTP 请求的适当解决方案。 回答1 我们目前正在使用 http://apiary.io 除了能够“模拟”您的回复之外,您还可以获得一个不错的 API 描述作为奖励! 我们所做的是针对代理运行 Angular 应用程序,这取决于我们是在开发中还是在生产中,可以转发到真正的后端或 apiary 提供的后端。 回答2 我同意之前的回答。 对于 Protractor 频繁更改的解决方案是将后端与被测系统完全去相关,无论它是模拟、存根还是假的。 困难在于保持与真实后端的强一致性,但并不是说这比试图保持不断变化的 angular
  • Documenting query parameters with API Blueprint
    I'm trying to document a query parameter in API Blueprint, but I'm not entirely sure if I have done it correctly. The resource looks like this: DELETE http://baasar.apiary-mock.com/user/{appId}/{userId} That request would deactivate the user while the following would delete the user object: DELETE http://baasar.apiary-mock.com/user/{appId}/{userId}?force=true This is the Blueprint markdown I have for this: ## User [/user/{appId}/{userId}] Handle user objects + Parameters + appId (required, number, `1`) ... Application ID (`appId`) + userId (required, number, `1`) ... Numeric `userId` of the
  • 如何使用Mockito模拟最终课程(How to mock a final class with mockito)
    问题 我有一堂期末课,像这样: public final class RainOnTrees{ public void startRain(){ // some code here } } 我正在像这样的其他班级使用这个班级: public class Seasons{ RainOnTrees rain = new RainOnTrees(); public void findSeasonAndRain(){ rain.startRain(); } } 在我的Seasons.java JUnit测试类中,我想模拟RainOnTrees类。 我该如何使用Mockito做到这一点? 回答1 仅在Mockito v2中可以模拟最终/静态类/方法。 将此添加到您的gradle文件中: testImplementation 'org.mockito:mockito-inline:2.13.0' 使用Mockito常见问题解答中的Mockito v1,这是不可能的: Mockito的局限性是什么需要Java 1.5+ 无法模拟期末班 ... 回答2 Mockito 2现在支持最终的类和方法! 但是现在这是一个“孵化”功能。 它需要一些步骤来激活它,如《 Mockito 2的新增功能》所述: 最终课程和方法的模拟是一个孵化器,可以选择加入。 它结合使用Java代理工具和子类
  • E2E模拟$ httpBackend实际上没有通过(E2E mock $httpBackend doesn't actually passThrough for me)
    问题 尽管我相信我正在按照此处的说明设置$ httpBackend以将选定的请求传递给服务器,但它对我而言不起作用。 这是一个测试失败的Plunkr,它显示了我在做什么,并在注释中解释了似乎出了什么问题。 我的观点表明,出于某种原因,模拟$httpBackend没有真正的$httpBackend的内部副本,因此,当需要通过XHR请求时,它将其传递给模拟$httpBackend 。 第二个调用引发异常,因为它不知道如何处理请求。 对dtabuenc的回应 我很高兴地记得您在中途测试中的帖子。 您将确定一个重要的集成测试范围,介于单元测试和E2E测试之间。 我站在中间立场上。 我认为您一点都不傻。 您的答案是完全合理的……或者与“ API参考/ ngMockE2E / $ httpBackend”的文本不矛盾,这是合理的。 我引用: 此实现可用于通过when api及其快捷方式( whenGET , whenPOST等)以静态或动态响应进行响应,还可以选择将请求传递给实际的$httpBackend以获取特定请求(例如与某些远程api进行交互或获取)来自网络服务器的模板) ... 在端到端测试方案中,或者在开发使用真实后端api替代了模拟程序的应用程序的情况下,某些类别的请求通常希望绕过模拟程序并发出真实的http,请求....要配置这种行为使用后端的passThrough时
  • vue3.0自己添加一个vue.config.js配置文件
    vue3.0自己添加一个vue.config.js配置文件 一、执行配置文件二、发布配置文件 注意:vue-cli.3.3版本后后将baseUrl废除了,使用publicPath代替了,要将baseUrl换为publicPath。 //vue3.0自己添加一个vue.config.js配置文件 module.exports = { // 项目部署的基础路径 publicPath: './', // 将构建好的文件输出到哪里(或者说将编译的文件) outputDir: 'dist', // 放置静态资源的地方 (js/css/img/font/...) assetsDir: 'static', // 用于多页配置,默认是 undefined pages: { index: { // 入口文件 entry: 'src/main.js',  /*这个是根入口文件*/ // 模板文件 template: 'public/index.html', // 输出文件 filename: 'index.html', // 页面title title: 'Index Page' }, // 简写格式 // 模板文件默认是 `public/subpage.html` // 如果不存在,就是 `public/index.html`. // 输出文件默认是 `subpage.html`. subpage
  • 细说API - 文档和前后端协作
    在上一篇文章——《细说API - 重新认识RESTful》中介绍了如何理解和设计RESTful风格的API,现在我们来聊聊如何有效的呈现API文档,以及前后端协作的方式。我经历过一些没有文档的项目,前后端开发者坐到一起口口相传,或者有些团队用 word、pdf 来编写 API 文档。API 文档的缺乏给前后端协作带来困难,在缺乏专门工具的情况下,编写和维护文档是一件工作量巨大的事,人工处理也非常容易出错。本文将会介绍三种方案来解决前后端协作的问题:基于注释的 API 文档:这是一种通过代码中注释生成 API 文档的轻量级方案,它的好处是简单易用,基本与编程语言无关。因为基于注释,非常适合动态语言的文档输出,例如 Nodejs、PHP、Python。由于NPM包容易安装和使用,这里推荐 nodejs 平台下的 apidocjs。基于反射的 API 文档:使用 swagger 这类通过反射来解析代码,只需要定义好 Model,可以实现自动输出 API 文档。这种方案适合强类型语言例如 Java、.Net,尤其是生成一份稳定、能在团队外使用的 API 文档。使用契约进行前后端协作:在团队内部,前后端协作本质上需要的不是一份 API 文档,而是一个可以供前后端共同遵守的契约。前后端可以一起制定一份契约,使用这份契约共同开发,前端使用这份契约 mock API
  • Good rest code generation and documentation tool [closed]
    Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers. Want to improve this question? Update the question so it's on-topic for Stack Overflow. Closed 4 years ago. Improve this question I have been considering a documentation tool for building a backend for a web service to be used in multiple clients along with OAuth and possibility of multiple revisions. I already knew about apiary but doing a little research I found other considerably good solutions with lucrative promises. RAML seems to be promising good code generation and api reusability. But
  • 3. Vue入门实战教程之vue-element-admin初体验
    Vue入门实战教程之vue-element-admin初体验 1.1 写在前面的话1.2 vue-element-admin 后台管理框架1.2.1 开发环境搭建1.2.1.1 关于node 版本选择和安装1.2.1.2 Git 1.2.2 下载代码1.2.3 跑起来1.2.4 体验它1.2.5 分析它1.2.5.1 项目目录结构 1.2.6 Q & A1.2.6.1 网络请求封装1.2.6.2 如何取消Mock 数据?1.2.6.3 如何解决跨域问题?1.2.6.3.1 理解的官方解决方案1.2.6.3.2 我的解决方案 1.2.6.4 如何打包部署到生产环境? 1.1 写在前面的话 其实作为后端开发,我们本不该花费过多精力去研究Vue。 但是如果去的不是大厂,而是初创公司,那么对于研发的职责并没有那么清晰的边界,我们除了开发后台相关的业务逻辑之外,还需要一个强大的后台管理框架来支撑我们的梦想。 尽管网上有大量的基于Jquery 和BootStrap 的框架供我们后端拿来使用,博主之前也是使用H+ ,H-ui-Admin 等开源后台管理框架,但是当在我试用了Vue的数据双向绑定之后,感觉真香。 于是博主决定尝试学习新技术,寻找一个更为强大的基于Vue 的后台管理框架。 1.2 vue-element-admin 后台管理框架
  • 如何在Ember CLI中使用自定义Express服务器?(How to use a custom Express server with Ember CLI?)
    问题 我正在使用Ember CLI 0.0.36。 当我在项目文件夹中运行ember server时,我的理解是埋在某些Brocoli进程中的服务器将启动。 但是,我想对自定义Express服务器进行编程,并使我的应用程序指向其后端的Node.js代码。 我将如何在Ember CLI框架中执行此操作? 更新: 按照@ user3155277的回答,我添加了一个适配器文件,如下所示: app-name / app / adapters / application.js : import DS from 'ember-data'; export default DS.RESTAdapter.reopen({ namespace: 'api' }); 我创建了一个Express服务器,放置在应用程序的根目录中: app-name / server.js : var express = require("express"), app = express(), path = require("path"); app.get("/api/test", function(req, res) { res.json({ hello: "world" }); }); var server = app.listen(8147); 在Ember应用程序中,我的索引路由定义如下: app-name /