【问题标题】:Basic Routing Issue with ExpressExpress 的基本路由问题
【发布时间】:2016-10-31 01:20:45
【问题描述】:

Noobie 在这里使用 Node/Express。我使用 jQuery 日期范围滑块构建了一个应用程序,允许用户选择日期范围并从 Socrata SODA API 中提取数据。工作版托管here.

我的目标是让用户能够在查询后刷新页面(或在查询后复制/粘贴/共享 URL)并能够加载相同的结果。我已经设法用这个正确地修改了 URL:

function changeURL(startDate, endDate) { 
  window.history.pushState("ChangeDates", "Title", "/fire/dates?start="+startDate+"%end="+endDate+"");
}

所以在运行查询后,URL 类似于:

[root]/fire/dates?start=2015-01-01%end=2015-02-11

我面临的挑战是路由。目前刷新会遇到 404。如何设置 Express 以将任何带有 /fire/[param] 的 url 请求路由到主页,然后传递参数以再次触发查询?

非常感谢大家。

【问题讨论】:

    标签: javascript jquery node.js express routing


    【解决方案1】:

    为什么不使用像这样的哈希将参数保留在客户端:

    yourremotadress.org/#start=xxx&end=yyy
    

    您可以通过以下方式访问哈希变量:

    window.location.hash
    

    所以只需在页面加载时读取和解析哈希,启动查询并显示数据?

    【讨论】:

    • 这看起来很棒,谢谢。认为我在参数和哈希之间混淆了。会试一试的。
    猜你喜欢
    • 2016-09-23
    • 1970-01-01
    • 2019-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多