Javascript 是否可以在不重新加载完整页面的情况下将https页面更改为http?

Javascript 是否可以在不重新加载完整页面的情况下将https页面更改为http?,javascript,jquery,ajax,backbone.js,Javascript,Jquery,Ajax,Backbone.js,我们的站点有一些页面,比如accountsetting,它们是用HTTPS加载的,当我们导航到HTTP页面时,我们用javascript更改url,整个页面都在重新加载。。 我们的网站是在Backbone.js中创建的单页应用程序。有没有更好的方法来处理这个问题 这就是我们正在做的 ACCELERATOR.Router = Backbone.Router.extend({ routes :{ 'categoryHome(/:Typ

我们的站点有一些页面,比如accountsetting,它们是用HTTPS加载的,当我们导航到HTTP页面时,我们用javascript更改url,整个页面都在重新加载。。 我们的网站是在Backbone.js中创建的单页应用程序。有没有更好的方法来处理这个问题

这就是我们正在做的

    ACCELERATOR.Router = Backbone.Router.extend({

            routes :{
                'categoryHome(/:Type)(/:catId)' : 'homeAction',
                'account_settings(/:nickname)': 'accountSettingsAction',
                'trolley': 'trolleyAction',
                '*actions': 'defaultAction'
            },
            homeAction : function(){
                //some action
            },
            accountSettingsAction : function(){ 
                    if (location.protocol=='http:') { // cheking for https page 
                        var domain = document.domain;
                        var accountPage = "https://"+domain+ "/account.shtml#/account_settings";
                        window.location.assign(accountPage);
                    }elase{

                    }
            },
            trolleyAction : function(){

                    if (location.protocol=='https:') { // cheking for https page 
                        var domain = document.domain;
                        var trolleyPage = "http://"+domain+"//home.shtml#/trolley";
                        window.location.assign(trolleyPage);
                    }elase{

                    }
            }

    });

有没有更好的方法来处理这个问题?

如果你有敏感信息,不要混用,只需坚持使用HTTPS或从一个页面转到另一个页面来处理敏感事务


这完全取决于您在应用程序中的工作流程以及什么是有意义的

在所有内容中使用https,或在所有内容中使用http并解决问题。如果您的站点是单页应用程序,为什么要更改URL?您应该使用AJAX。如有必要,启用CORS从HTTPS页面访问HTTP,反之亦然。不,您应该使用HTTPS加载所有内容。如果您想要覆盖,您总是可以通过主干网发送一个http ajax请求