当前位置: 首页 > 知识库问答 >
问题:

如何从javascript访问swagger yaml定义的对象

杨俊茂
2023-03-14
var swagger         = require('swagger-server');
var server          = swagger('map-cache.yaml');

var port            = 7072;

server.post('/map-qa_trunk/v2/getData', function(req, res, next) {
    var foo = { 
        err : 123,
        msg : "error message"
    };  
    res.json(foo);
});

server.listen(port, function() {
  console.log('Map Cache Mock Server is now running at http://localhost:' + port);
});
var response = getMapResponseData(); // don't know what this call should be
response.fieldA = 123;
res.json(response);

共有1个答案

司马自明
2023-03-14

尝试将request对象输出到console.log以查看是否可以找到对swagger定义的引用。另一个选择是从yaml文件中提取解析的swagger定义(例如,使用js-yaml)并从中提取。

不过,我最好的建议是使用swagger-tools而不是swagger-server。swagger-server包是alpha版本,比swagger-tools有更少的下载量、修订量和用户。swagger-tools的好处是它将被积极维护,并且有一个更大的社区可以支持你。要将项目转换为swagger-tools,请使用Swagger.io>Swagger编辑器>在线编辑器>在左窗格中粘贴yaml>生成服务器>node.js

在swagger-tools中,整个Swagger Yaml定义包含在每个请求对象中:

req.swagger.swaggerObject
 类似资料:
  • React能够按照http://facebook.github.io/React/docs/jsx-gotchas.html中的描述呈现自定义属性: 如果您想使用一个自定义属性,您应该在它前面加上data-。 这是个好消息,但我找不到从事件对象访问它的方法,例如: 元素和属性以html格式呈现。像这样的标准属性可以作为fine访问。而不是: 这些都没用。 匿名用户 以一种可能与您所要求的不同的方式

  • 问题内容: 如http://facebook.github.io/react/docs/jsx- gotchas.html 所述,React能够呈现自定义属性 : 如果要使用自定义属性,则应在其前面加上data-。 那是个好消息,除了我找不到从事件对象访问它的方法,例如: 元素和属性以html呈现。可以像这样访问标准属性。而不是我尝试: 这些都不起作用。 问题答案: 为了帮助您以与要求不同的方式获

  • 问题内容: 就像是 这是我想象的格式,但事实并非如此。什么会退回到对象的父级? 问题答案: JavaScript本身不提供此功能。而且我怀疑您是否可以创建这种类型的功能。例如: 鲍比属于谁?

  • 问题内容: 我有以下Java代码- 我得到的错误是 如何正确访问注释字段? 问题答案: 默认情况下,注释在运行时不可用。您需要添加到注释定义以使其可用于运行时处理。例如: 在实践中,还应在实际尝试从字段中删除注释之前,检查该字段是否确实具有给定的注释。 另外,指定注释所属的元素类型也是一种好习惯。因此,您的示例将是:

  • 我正在尝试访问存储在AWS3桶中的文本文件。目前,它只包含“测试”一词。 起初,我以为我的fs.readfile有问题,但现在我发现问题更根本。我根本无法访问该文件。node.js的AWS似乎根本无法看到该文件。 我正在使用以下Lambda函数: 测试床函数包含以下代码: 结果如下所示(我删除了时间戳和请求ID文本): 由此,我得出结论,没有调用S3函数,尽管我可能弄错了。 我做错了什么?

  • 问题内容: 是否有一种优雅的方式来访问对象的第一个属性… 您不知道物业名称的地方 而不使用像jQuery这样的循环 例如,我需要在不知道foo1名称的情况下访问对象: 问题答案: var obj = { first: ‘someVal’ }; obj[Object.keys(obj)[0]]; //returns ‘someVal’ 使用此方法,您还可以通过索引访问其他属性。请注意!根据ECMAS