2013-09-04 3 views
0

우리 사이트는 HTTPS로로드중인 accountsetting과 같은 일부 페이지가 있습니다. HTTP 페이지로 이동하면 javascript의 URL이 변경되고 전체 페이지가 다시로드됩니다. 우리 웹 사이트는 Backbone.js에서 생성 된 단일 페이지 응용 프로그램입니다. 이것을 처리하는 더 좋은 방법이 있습니까?전체 페이지를 다시로드하지 않고 https 페이지를 http로 변경할 수 있습니까?

이것은 우리가하고있는 일입니다 ..

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{ 

        } 
      } 

    }); 

이 처리 할 수있는 더 좋은 방법이있다?

+1

모든 것을 https로, 모든 것을 http로하고 문제를 해결하십시오. –

+0

사이트가 단일 페이지 앱인 경우 URL이 왜 변경됩니까? AJAX를 사용해야합니다. 필요한 경우 CORS를 사용하여 HTTPS 페이지에서 HTTP에 액세스하거나 HTTPS 페이지에서 HTTP에 액세스 할 수 있도록 설정합니다. –

+2

아니요, 모든 항목을 https로로드해야합니다. 재정의하려면 백본을 통해 http ajax 요청을 항상 촬영할 수 있습니다 –

답변

0

중요한 정보가있는 경우 민감한 거래를 처리하려면 HTTPS을 사용하거나 단일 페이지에서 다른 페이지로 이동하십시오.

모두 응용 프로그램의 워크 플로와 의미에 따라 다릅니다.

관련 문제