이 질문은 지난주 오션쉬핑컴퍼니 면접 때 나온 필기시험 문제였습니다. 면접때도 면접관님이 물어보셨는데, 당시에는 미리 준비해서 정확하게 대답했지만, 기본적으로는 그렇지 못했습니다. 잘 이해가 안 돼요. 바로 지난 이틀간 효율적인 플랫폼 평가 시스템 작업을 하다가 페이지 값 전송을 사용하게 되어서 인터넷에서 관련 정보를 좀 확인해 봤습니다.
일반적으로 사용되는 페이지 값은 QueryString 값, Session 값, Cookies 값, Application 및 Transfer 값입니다. 다양한 가치 이전 방법의 작동 메커니즘, 상호 관계, 장점 및 단점을 살펴보겠습니다.
QueryString 값 전송은 URL 값 전송이라고도 하며 일반적으로 사용되며 비교적 간단합니다. 값 모드에서는 전송해야 하는 데이터를 연결 주소에 연결하여 대상 주소로 전송합니다.
장점: URL 값 전송이 간단하고 모든 브라우저에서 지원되므로 문자열 형식의 데이터 전송에 매우 효과적입니다.
단점: 보안성이 높지 않습니다. 주소 표시줄에 전송해야 하는 데이터가 완전히 노출됩니다. 암호화 기술을 사용하지 않으면 URL 값 전송을 사용하기 어렵습니다. 보안 수준이 높은 데이터의 경우 일부는 비합리적이지 않습니다. 또한 이 방법에는 데이터 유형에 대한 요구 사항이 있습니다. 일반적으로 이 방법은 배열 및 개체 전송에 사용할 수 없습니다.
세션 값 전달에 대해서는 잘 알고 계시리라 믿습니다. 차이점. 범위가 있는 전역 변수입니다. 예를 들어 애플리케이션 웹 사이트의 경우 세션은 단일 사용자의 정보일 수 있습니다. 애플리케이션은 로컬 제한이 없는 전역 변수로, 웹사이트 실시간 방문 등 전체 웹사이트에 대한 정보를 저장할 수 있습니다.
장점: 사용이 비교적 간단할 뿐만 아니라 데이터의 양에도 제한이 없습니다.
단점: 세션 변수에 많은 양의 데이터를 저장하면 서버 리소스가 더 많이 소모되고 데이터가 쉽게 손실됩니다.
이 값 전송 방법을 들어본 적이 있거나 거의 사용하지 않을 수도 있지만 저는 사용해본 적이 없습니다. 위의 Session value transfer와 연결해 보면 훨씬 더 잘 이해할 수 있을 거라 믿습니다. 전역 변수와 마찬가지로 애플리케이션의 수명 주기 내내 유효하므로 모든 페이지에서 액세스할 수 있습니다.
장점: 사용이 간편하고 서버 리소스를 덜 소모하며 데이터뿐만 아니라 개체도 전송할 수 있으며 데이터 양에 제한이 없습니다.
단점: 전역 변수이기 때문에 오용되기 쉽습니다.
쿠키 가치 이전은 컴퓨터와 휴대전화를 자주 사용하는 사람이라면 누구나 쓰레기를 치우는 일과 매우 친숙할 것입니다. 어느 시점에서 우리는 항목 중 하나가 쿠키를 삭제하는 것임을 발견했습니다. 쿠키를 삭제한 후 일반적으로 사용되는 일부 웹사이트에 대해 이전에 저장한 사용자 이름과 비밀번호를 다시 입력해야 한다는 사실을 발견했습니다. 이것이 쿠키의 역할입니다. 쿠키는 사용자 이름 및 비밀번호와 같은 사용자 관련 정보를 사용자 브라우저에 저장하는 데 자주 사용됩니다. . 다음에 로그인할 때 수동으로 입력할 필요가 없습니다. 따라서 쓰레기를 청소할 때 필요에 따라 이 항목을 치울지 여부를 선택해야 합니다. 쿠키와 세션도 몇 가지 유사점을 가지고 있습니다. 즉, 둘 다 단일 사용자를 대상으로 하지만 본질적인 차이점은 세션이 서버 측에 저장되는 반면 쿠키는 클라이언트 측에 저장된다는 것입니다.
장점: 사용이 간편하고 사용자 상태를 저장하는 매우 효과적인 방법입니다. 모든 정보는 서버에 부담을 주지 않고 클라이언트에 저장됩니다.
단점: 보안이 낮고 위조가 쉬우며 사용자에게 일정량의 메모리 쓰레기를 가져옵니다.
Transfer Value는 상대적으로 고급이며, Transfer만이 객체지향 소프트웨어 설계에 사용되는 방법이라고 볼 수 있습니다. Transfer 메소드를 사용하면 현재 페이지에서 다른 페이지로 프로세스를 안내할 수 있습니다. 이를 흔히 리디렉션이라고 합니다. 새 페이지는 이전 페이지의 응답 흐름을 사용하므로 이 메소드는 완전히 객체 지향적입니다.
장점: 서버측에서 직접 리다이렉트하고, 사용이 간단하고 편리하며, 서버에 대한 클라이언트 요청을 줄이고, 다양한 데이터 유형의 값을 전달하고 값을 제어할 수 있습니다.
단점: 클라이언트 브라우저의 URL 주소가 변경되지 않아 새 페이지에서 예상치 못한 상황이 발생할 수 있습니다. 예를 들어 원본 페이지와 대상 페이지가 동일한 가상 디렉터리나 해당 하위 디렉터리에 없으면 상대 경로를 사용하는 일부 그림이나 하이퍼링크로 인해 방향이 잘못됩니다.
위 내용은 ASP.NET 페이지에서 전달된 값의 내용이며, 기타 관련 내용은 PHP 중국어 홈페이지를 참고하시기 바랍니다. (www.php.cn)!