2010-11-28 3 views
0

SSJS에 대한 질문이 있습니다.ServerSide JavaScript

SSJS를 사용하면 사용자로부터 코드를 숨길 수 있습니까? 나는이 테스트

<html> 
<head> 
    <script runat="server"> 
    function getPassword(){ 
     var password = "myPass"; 
     return password; 
    } 
    </script> 
</head> 
<body> 
    <script> 
    alert(getPassword()); 
    </script> 
</body> 
</html> 

: 그들은 클라이언트 측보다 먼저 처리되기 때문에 PHP와 같은

다른 서버 측 언어는 브라우저

내가 원하는 걸의 작은 예 소스에서 볼 수 없습니다 암호는 계속 볼 수 있습니다.

제 예제가 단순한 CSJS가되도록하거나 SSJS 코드를 숨길 수 없습니까?

+0

나는'추가 RUNAT는 = "서버가"'그 서버를 만드는 것을 생각하지 않는다 사이드 자바 스크립트. JS 코드를 HTML 소스 코드에 삽입하면 클라이언트 측에서 자동으로 JS 코드가 삽입됩니다. –

답변

0

T.J.의 현명한 말을 고수하십시오. 당신의 스타일이 같을 수에 맞춰

<% @language=ecmascript %> 
<% 
    function getPassword(){ 
     var password = "myPass"; 
     return password; 
    } 
%> 
<html> 
<head> 
</head> 
<body> 
    <script> 
    alert('<%=getPassword()%>'); 
    </script> 
</body> 
</html> 

이상 : 크라우 더, 당신의 파일은 다음과 같이 찾고, 윈도우 기반의 호스트 (확장 .ASP 너무 파일)에 고전 .asp 파일 수 :

<script language="jscript" runat="server"> 
// mind the 'language' property, it is required. 
// The script tag doesn't have to be 
// in the header of the html-document. 
    function getPassword(){ 
    var password = "myPass"; 
    return password; 
    } 
</script> 
<html> 
<head> 
</head> 
<body> 
    <script> 
    alert('<%=getPassword()%>'); 
    </script> 
</body> 
</html> 

서버 쪽 스크립트가 페이지 소스에 표시되지 않는 두 가지 방법. 제외 : <%=...%> 다른 호스트의 Response.Write(...)

, 공급자 또는 데이비드 Dorwards 응답에 주어진 위키 피 디아의 목록을 확인하기위한 속기로 볼 수있다

0

예, 서버 측 코드는 다른 서버 측 언어와 마찬가지로 사용자로부터 숨길 수 있습니다. 서버 측 JavaScript를 이해하는 서버를 통해 관련 HTML 파일을 제공해야하며 해당 서버를 올바르게 구성해야합니다 (기본적으로 .html 파일은 사전 처리되지 않을 것입니다. 일반적으로 서버 측 HTML 파일 코드는 .shtml, .asp, .aspx 등과 같이 실행중인 플랫폼에 따라 다른 확장자를 갖지만 적절한 구성을 사용하면 올바르게 처리 할 수 ​​있습니다. 위의 코드를 웹 브라우저를 통해 볼 수 있었다면 그 단계 중 하나를 빠뜨린 것입니다.

서버 쪽 JavaScript에는 다른 서버 쪽 언어의 장점과 단점이 있습니다. 서버 측 언어로 클라이언트 브라우저의 스크립팅을 수행 할 수는 없습니다 (예 : 많은 클라이언트 측 코드가 표시되는 이유). (아마도 그것은 분명했습니다. :-))

0

모든 서버 측 JavaScript는 서버에서만 사용할 수 있지만 클라이언트에 보내기 전에 PHP 엔진을 통해 PHP를 실행해야하는 것처럼 SSJS를 실행해야합니다 그것을 보내기 전에 JS 엔진을 통해.

위키 백과에서 a list of such engines을 찾을 수 있지만 현재 가장 인기있는 것은 node.js입니다.

runat="server"은 ASP.NET 구조 인 IIRC입니다. 해당 경로로 이동하려면 ASP.NET을 처음부터 사용해야합니다. 비록 당신이 가지고있는 구문이 맞는지 나는 잘 모른다.

+0

빠른 답변 주셔서 감사합니다. 일반 (공유, 리눅스) 호스팅은 SSJS를 지원합니까? 즉, 대부분의 사이트에서 SSJS를 실행할 수 있다고 가정 할 수 있습니까? – Chielus

+0

@Chielus 아니요, node.js는 매우 새롭고 플랫폼 (SSJS)은 너무 젊어서 대부분의 사람들이 그것을 지원할 수 없습니다. – xj9

+0

서버 측 JS는 1996 년 이래로 사용되어 왔으며 최근까지도 인기를 얻지 못했습니다. – Quentin