【问题标题】:Is it possible to send javascript request using wiselinks?是否可以使用 wiselinks 发送 javascript 请求?
【发布时间】:2013-10-06 20:09:25
【问题描述】:

默认情况下,rails(我使用的是 rails 4)发送带有以下标头的数据远程请求:

Accept:*/*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript

稍后在 Rails 代码中,我使用 format.js 对其进行响应。

我想迁移到 wiselinks,但所有数据推送请求都尝试呈现 html。 是否可以通过 wiselinks 实现默认的 rails 行为?

【问题讨论】:

  • 你能澄清一下吗?您是否已经安装了 wiselinks 并且所有数据推送链接仍然返回 html?还是您在问如何正确安装wiselinks?
  • @manishie,我安装了 wiselinks 并将数据远程更改为数据推送。我只需要更改 wiselink 接受标头。

标签: ruby-on-rails ajax


【解决方案1】:

我认为您没有正确理解 Wiselinks 的工作原理。如果你使用:data => { :remote => true },那么你根本就不需要:data => { :push => true }。

只有在您需要更新您的 URL(点击链接)时才应使用推送。

【讨论】:

  • 我对 :remote => 很满意。但是它不能正确处理导航。所以我决定改用wiselinks。我需要 JS 响应,因为我需要从服务器返回 Js,这将更新网页上的几个位置。
  • 然后就可以订阅page:done事件了。为什么不呢?
【解决方案2】:

好的,我重写了我的控制器来响应 html AJAX 请求,而不是使用 JS 请求。 这样我就可以使用 wiselinks 并且它可以工作。我使用 JS 响应的主要原因是使用 javascript 和其他一些细节设置页面标题。但是有了 wiselinks,我可以为此使用特殊的助手。

我认为将来可能需要在 AJAX 请求后实现一些复杂的行为,这将需要在响应后在客户端执行一些 JS。但是,这可以通过 page:done 事件来实现

谢谢大家的帮助!

【讨论】:

    猜你喜欢
    • 2021-01-27
    • 1970-01-01
    • 1970-01-01
    • 2012-07-17
    • 2013-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多