Backbone.js 主干路由器正在从url中消失

Backbone.js 主干路由器正在从url中消失,backbone.js,backbone-routing,Backbone.js,Backbone Routing,此url如下所示,请加载页面: /app/#/rGd4FaNjg22EvTuot3SRKF1suueUSc8Lhd (I also tried /app/#rGd4FaNjg22EvTuot3SRKF1suueUSc8Lhd ) (and also tried /app#rGd4FaNjg22EvTuot3SRKF1suueUSc8Lhd) …然后变成 /app/rGd4FaNjg22EvTuot3SRKF1suueUSc8Lhd 如何在url中保留字符?您应该使用/apprGd4FaNjg

此url如下所示,请加载页面:

/app/#/rGd4FaNjg22EvTuot3SRKF1suueUSc8Lhd
(I also tried /app/#rGd4FaNjg22EvTuot3SRKF1suueUSc8Lhd )
(and also tried /app#rGd4FaNjg22EvTuot3SRKF1suueUSc8Lhd)
…然后变成

/app/rGd4FaNjg22EvTuot3SRKF1suueUSc8Lhd

如何在url中保留字符?

您应该使用/apprGd4FaNjg22EvTuot3SRKF1suueUSc8Lhd,在磅符号后不带斜杠。斜线表示URL中的另一个级别。

看起来您已经使用pushState:true选项启动了Backbone.history。我猜在您的代码中类似于这样:

Backbone.history.start({ pushState: true, root: '/app' });
pushState选项将为您删除

文件:


因此,如果您不希望前端路由被当作后端URL处理,只需将pushState选项设置为false,或者删除它,因为false是默认值。如果为false,主干路由将被处理。

还将在/app后面直接使用磅符号?