在页面加载时,例如针对(例如https://localhost:8000/home/index
)的特定路由,调用服务并将服务的响应呈现给客户端的页面。
在同一页面上,我有一个弹出Backbone.js模式的链接,并从模态中触发一个点击事件触发,触发另一个URL(例如https://localhost:8000/home/index2
),另一个服务调用触发,响应是渲染到另一个html页面。
在同一个html页面上,我想显示一个在页面加载时从第一次服务调用中获得的值。但是,我无法保留该值,因为每次都有两个不同的请求。因此,我甚至无法将第一个响应的值附加到请求对象并再次使用它。
答案 0 :(得分:0)
您可以使用JavaScripts Web Storage API在客户端浏览器上存储信息。
例如,如果您在第一个屏幕上并呼叫服务,请将服务信息存储在localStorage
localStorage.setItem('firstService', serviceResponseObject);
导航到第二页后,您可以使用localStorage读取以前的服务信息
localStorage.getItem('firstService');
答案 1 :(得分:0)
有多种方法可以在请求之间存储状态。
从服务器,如果您使用说Express等,您可以将结果存储在会话中。或者您甚至可以在请求查询参数或POST请求中存储状态。
您还可以使用Cookie或localstorage在客户端存储一些数据。
您选择的确实取决于,如果您更详细地解释在页面之间传递的信息类型,可能是最好的。
如果它只是一个简单的值,我会选择使用查询参数。
例如。只需放入您的网址https://localhost:8000/home/index2?value=123
,然后从node.js,req.query.value
就可以获得您的价值。