2014-12-04 3 views
0

웹 서비스를 사용하여 Gmail에서 사용자 이메일을받는 lifletay에 하나의 포틀릿이 있습니다. 나는 평생 동안 Gmail을 분류했다. 그것은 liferay portal에 로그인 할 때 사용자가 자동으로 gmail에 로그인한다는 것을 의미합니다.Gmail API는 평생과 함께 분류 된 후 자격 증명을 요청합니다.

이제 내가 직면 한 문제는 사용자가 브라우저 기록, 쿠키 및 모든 것을 삭제했다고 가정 해 봅시다. 그 후 사용자는 liferay 포털을 열어 로그인합니다. 따라서 사용자는 자동으로 gmail에 로그인합니다. 여기까지 괜찮아. 그 다음에 포틀릿을 클릭하면 이메일을 받기 위해 Gmail 웹 서비스를 호출합니다. Gmail에 이미 로그인되어 있기 때문에이 웹 서비스는 Gmail 확장 프로그램을 다시 요청하지 않아야합니다. 그러나 그것은 묻고있다. 브라우저에서 프로그래밍 방식으로 한 번 "https://mail.google.com/a/edsoa.com"(Gmail에서 제공하는 특정 도메인 URL)을 열면 브라우저에서 Gmail 세션이 생성되고 그 후에 Gmail 웹 서비스에 액세스하면 요청하지 않습니다. 신임장.

내 관심사는 브라우저에서 "https://mail.google.com/a/edsoa.com"을 열지 않고 gmail 세션을 만들 수있는 방법입니다.

내가 원하는 것은 간단히 말해서 내가 이미 gmail에 로그인되어 있다면 gmail은 어떤 gmail 웹 서비스에도 액세스 할 수있는 자격 증명을 요구하지 않아야한다는 것입니다.

제가 시간이 없어서 도움이된다면 정말 감사하겠습니다.

감사합니다. 감사합니다, Abdulbasit F Shaikh.

답변

0

웹 서비스를 통해 Gmail에 액세스하지만 로그인/로그 아웃을 참조한다고 말하면서 실제로 문제가 발생하지 않습니다. Gmail API에 액세스하는 경우 (저는 아닙니다. 익숙한), 이것은 아마도 서버 로그인과 독립적입니다.

gmail webservice API에 대한 로그인이 (Liferay) 서버에서 시작된 것으로 예상되지만 브라우저의 식별 정보는 자연스럽게 브라우저에서 생성 된 것입니다. 따라서 (Liferay) 서버에서 브라우저 세션을 시작할 수있는 방법이 없습니다.

그러나 OpenID로 Liferay에 로그인을 시도 할 수 있습니다 - AFAIK google도이 기능을 제공합니다. 이것은 Liferay에 로그인하기 위해 Google에 자격 정보를 제공한다는 의미입니다. 가장 가능성이 큰 Gmail 계정 (동일한 계정을 사용하는 경우)

+0

답장을 보내 주신 Olaf에게 감사드립니다. 내가 언급 한 문제에 대한 해결책을 얻었으나 다시 문제와 관련이있는 문제에 다시 게시했다. 나는 liferay에 하나의 응용 프로그램을 가지고 있는데, 여기에는 gmail의 모든 메일이 포함되어있다. 이제 이메일을 클릭하면 실제 Gmail로 리디렉션되고 내가 클릭 한 메일이 열립니다. 그러나 이것은 "https://mail.google.com/a/edsoa.com"이 브라우저에서 적어도 한 번만 방문하면 발생합니다. 하지만 브라우저 쿠키를 삭제했다고 가정 해 봅시다. 따라서 브라우저에는 Gmail 쿠키가 없습니다. – abdul

+0

이제 응용 프로그램에서 전자 메일을 클릭하면 "https://mail.google.com/u/0/#inbox"로 리디렉션되지만 클릭 한 내 전자 메일은 열리지 않습니다. 처음 gmail이기 때문에 클릭 한 것입니다 로드 중입니다. 그 후 이메일을 클릭하면 제대로 열립니다. 그래서 나의 주요 관심사는 쿠키를 삭제 한 후에 응용 프로그램에서 메일을 클릭하면 처음에는 Gmail에서도 메일을 열어야한다는 것입니다. – abdul

+0

이것은 자신의 도메인 외부에서 들어오는 URL을 처리하는 Google의 질문입니다. 로그인하기 전에 요청한 페이지를 기억하고 있다면 IMHO가 Google과의 Liferay와는 아무런 관련이 없습니다. 죄송합니다. URL 처리 방법을 모르겠습니다. –

관련 문제