小编Nav*_*ngh的帖子

如何使用 nock.js 通过 GET 请求添加参数

我正在尝试使用 nock.js 来测试我的 API 路由是否可以模拟 url 请求。

我的路由文件根据以下逻辑路由:

app.get('/api/study/load/:id', abc.loadStudy );
Run Code Online (Sandbox Code Playgroud)

'abc.js' 中的 'loadStudy' 方法用于处理以下特定的 GET 请求。因此,来自浏览器的任何 GET 请求都有一个带有 'id' 参数的 'params' 键,用于替换 URL 中的 ':id'。但是,当我尝试使用 nock.js 模拟这个 GET 请求时,我无法在请求中传递这个“id”参数。

var abc = require('G:\\project\\abc.js');
var nock = require('nock');

var api = nock("http://localhost:3002")
          .get("/api/test/load/1")
          .reply(200, abc.loadStudy);

request({ url : 'http://localhost:3002/api/study/load/1', method: 'GET', params: {id : 1}}, function(error, response, body) { console.log(body);} ); 
Run Code Online (Sandbox Code Playgroud)

我的方法使用了与请求一起发送的“params”键,我无法模拟。在下面的代码中打印'req'只会给出'/api/test/load/1'。如何在 GET 请求中添加“参数”

loadStudy = function(req, res) {
    console.log(req);
    var id = req.params.id; …
Run Code Online (Sandbox Code Playgroud)

javascript testing api node.js nock

6
推荐指数
2
解决办法
6998
查看次数

在 aws cloudformation 模板中的 If 条件内使用 importValue

我试图找到一种在 If 函数内使用 ImportValue 的方法,但找不到正确的语法。任何帮助表示赞赏。

在我正在尝试的代码下面:

SomeTaskdefinition:
  Type: AWS::ECS::TaskDefinition
  Properties:
    Family: 'FamilyName'
    ContainerDefinitions:
    - Name: ContainerName
      Image: 'imagename:net/v2/'
      Environment:
      - Name: ENV_VARIABLE_1
        Value:
          Fn::If:
            Fn::Equals:
              Fn::ImportValue:
                !Sub "${ImportStackname}-ECSCluster"
              ''
            'notpresent'
            'present'
Run Code Online (Sandbox Code Playgroud)

yaml amazon-web-services aws-cloudformation

4
推荐指数
1
解决办法
6867
查看次数