在expressjs中使用文件名中的问号提供静态json数据

时间:2016-05-03 15:14:37

标签: express mocking

我试图从文件系统静态地提供json数据,以模拟api。

我之前在我的堆栈中使用了deployd并且能够从./users/names?id=123/index.html服务/ users / names?id = 123,但是我想删除那个依赖关系而只是依赖express像这样:

var express = require('express'),
  cors = require('cors'),
  app = express();

app.use(cors());
app.use(express.static('api'));

app.listen(3000, function () {
  console.log('API Mock Server listening on port 3000!');
});

不幸的是,当我在./users/names?id=123/index.html访问时,express没有提供JSON文件,我也尝试将index.html重命名为:./ users / names?id = 123到无济于事

1 个答案:

答案 0 :(得分:1)

你应该对'?'进行百分比编码当您在浏览器中访问它时。

所以请尝试 ./ users / names%3Fid = 123 / index.html

请参阅File URI encoding rules