如何将请求重定向到json服务器上的另一个URL?

时间:2019-10-07 19:30:02

标签: javascript frontend json-server

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

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

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

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

我该怎么做?

1 个答案:

答案 0 :(得分:0)

_pageOption Explicit Sub test() Dim sheetvar As Variant Dim mainsheet As String Dim subsheets As String Dim sheetdict As Object Dim currentbook As Workbook Set sheetdict = CreateObject("Scripting.Dictionary") Set currentbook = ActiveWorkbook For Each sheetvar In currentbook.Sheets If InStr(1, sheetvar.Name, "(") Then mainsheet = trim(Split(sheetvar.Name, "(")(0)) Else mainsheet = sheetvar.Name 'Get Name End If If Not sheetdict.exists(mainsheet) Then 'Make Dictionary Key subsheets = sheetvar.Name sheetdict.Add mainsheet, subsheets Else subsheets = sheetdict(mainsheet) & "|" & sheetvar.Name sheetdict(mainsheet) = subsheets End If Next sheetvar Dim key As Variant Dim isheet As Variant Dim newbook As Workbook Application.DisplayAlerts = False 'Might not want this if you want to see whats going on For Each key In sheetdict Set newbook = Workbooks.Add newbook.SaveAs key & ".xlsx" For Each isheet In Split(sheetdict(key), "|") If Not isheet Like "" Then currentbook.Sheets(isheet).Copy before:=newbook.Sheets("Sheet1") End If Next isheet If newbook.Sheets.Count > 1 Then 'Dodge error if there is only 1 sheet newbook.Sheets("Sheet1").Delete End If newbook.save newbook.close Next key Application.DisplayAlerts = True End Sub 一起使用,而不是_limit / _start

然后将其添加到routes.json中,

_end

应该处理{ "/:type/page/:page": "/:type?_page=:page&_limit=10" } /posts/page/1