2010-08-11 5 views
4

웹 서비스에서 세션을 관리 할 수 ​​있습니까? 그렇다면 세션을 관리하는 방법은 무엇입니까? JSP 또는 PHP에서 유지 관리하는 세션과 비슷합니까? 세션에 대한 정보는 클라이언트 또는 서버에 저장됩니까?세션 관리?

+0

나는이 방법을 재고 할 필요가 있음을 확신한다. 당신이 .net의 웹 서비스에 익숙하다면, 결코 "결코, 결코"그들 안에'Session'을 사용한다는 것을 알게 될 것입니다. – Achilles

답변

3

자바 또는 .net 질문입니까?

쉽게 예를 들어, WebMethod 속성에 EnableSession 매개 변수를 설정하여 서버를 호스팅하는 웹 서비스에 세션 상태를 사용할 수 있습니다 .NET에서

:

[WebMethod(EnableSession = true)] 
public bool Login(string login, string password) 
{ 
    // you can use session here so for example log in user 
    if(login = "administrator" && password = "secret") 
     Session["authorizedUser"] = login; 
} 
+0

@ LukaszW.pl : JSP 또는 PHP에서 유지 관리하는 세션과 비슷합니까? 세션에 대한 정보는 클라이언트 또는 서버에 저장됩니까? – brainless

+2

세션은 항상 서버 쪽입니다 ... PHP에서 세션과 비슷합니다 (저는 JSP를 모르겠습니다) ... 일반적으로 C# 웹에서 쉽게 액세스 할 수있는 서버에 저장된 객체의 클라이언트 고유 테이블입니다 웹 서비스를 호스팅하는 응용 프로그램. –

+0

웹 서비스는 HTML이 아닌 다른 형식의 요청 및 응답을 처리하는 일반 웹 응용 프로그램이므로 동일한 세션 관리 메커니즘이 사용됩니다. –

5

웹 서비스의 .NET 내부에서 Session 개체를 사용할 수 있습니다 ... 그러나 나는 그것이 나쁜 습관이라고 말하고 싶습니다. 일반적으로 웹 서비스는 이러한 방식으로 데이터를 전달하지 않으며 서비스의 데이터는 호출간에 지속되지 않습니다.

+1

세션은 웹 서비스에서 어떻게 작동합니까? 어떤 샘플 코드를 사용할 수 있습니까? – brainless

+1

webservices의'Session'은 모든 aspx 페이지에서와 똑같이 작동합니다. 개체를 세션 테이블에 넣고 거기에서 검색 할 수 있습니다. 또한 FormsAuthentication 등의 세션 기반 메커니즘을 사용할 수도 있습니다. –

0

Here 세션 지원이 WS-ReliableMessaging을에 관한 기사가 있으며, java 및 .net 개발 모두에서 지원됩니다.