【问题标题】:How to redirect a request to another URL on json-server?如何将请求重定向到 json-server 上的另一个 URL?
【发布时间】:2020-02-05 03:05:42
【问题描述】:

我需要从 json-server 请求分页数据。我想检索包含每页 10 个结果的用户页面。为此,我向/posts/page/1 发出GET 请求,但我知道我需要像/posts?_start=0&_end=9 一样请求它,因为这是json-server 的工作方式。

问题是我真正的后端是这样工作的,无论我使用的是真正的后端服务器还是测试 json-server,两个请求都应该从前端以相同的方式完成。

我尝试使用routes.json,但我看不到添加逻辑以将页码转换为routes.json 上的_start_end 参数的方法,因为它是一个json 文件。

每次我请求 /trips/page/1 时,我只需要 json-server 来返回来自 /posts?_start=0&_end=9 的响应,并使用逻辑将页码转换为 _start_end 参数。

我怎样才能做到这一点?

【问题讨论】:

    标签: javascript frontend json-server


    【解决方案1】:

    _page_limit 一起使用,而不是_start/_end

    然后添加到routes.jsonlike:

    {
      "/:type/page/:page": "/:type?_page=:page&_limit=10"
    }
    

    应该处理/posts/page/1/trips/page/1

    【讨论】:

    • 很难知道如何修改对 json-server 的请求,然后再按我的要求到达它的 json-server 本身,这解决了我的问题。无需为分页实现任何逻辑。我不知道为什么我在 json-server 文档上查看 Slice 而不是 Pagination。谢谢。
    • np,你可以把 express 放在前面或者只用 express,json-server 工具是用来开发和模拟的
    • 文档中有“修改对 json-server 的请求”的示例,github.com/typicode/json-server#module
    【解决方案2】:

    如果有人像我一样登陆这里寻找如何重定向到 json-server 上的不同 url,方法如下:

    server.get('/redirect', (req, res) => {
        res.redirect('http://localhost:3000/my_other_url')
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-27
      • 1970-01-01
      • 2022-08-07
      • 1970-01-01
      • 1970-01-01
      • 2015-05-10
      • 2014-12-05
      • 1970-01-01
      相关资源
      最近更新 更多