2017-10-02 2 views
1

한 번의 클릭으로 로그인 할 수 있도록 다른 사이트 (특히 Zoho.eu)에 게시물 요청을 보내려고합니다. 효과적으로 로그인 URL, 사용자 이름, 비밀번호 등을 POST하려고합니다.교차로 게시 요청

저는 Cross origin 문제를 겪었으며 JSONP, iFrame 메소드, CORS 등의 다양한 솔루션을 살펴 보았습니다. 이것들은 제가 가지고 있지 않은 제 3 자 백엔드에 대한 접근성을 요구합니다.

이 문제를 해결하려면 어떻게합니까? 어떻게 든 교차 원점 문제를 피할 수 있도록 프록시를 사용할 수 있다는 것을 알고 있지만 잘 모르겠습니다.

미리 감사드립니다.

+0

코드 예제 및 자세한 설명은 CORS 프록시를 사용하여 "No Access-Control-Allow-Origin header"문제를 해결하는 방법 * https://stackoverflow.com/questions의 응답 섹션을 참조하십시오./43871637/no-access-control-allow-origin-header-is-the-requested-resource-whe/43881141 # 43881141 – sideshowbarker

답변

1

나는 당신을 정확하게 이해하면 짧은 대답을 할 수 없다.

프록시는 사용자의 브라우저에서 세션을 만들고 로그인하는 데 도움이되지 않습니다. 프록시를 사용할 때 서버에서 사용자를 대신하여 요청을 수행하고 대상 도메인에 대한 사용자의 쿠키에 필요한 세션 값을 설정할 수 없습니다.

이것은 의도적 인 것입니다. 동일 출처 정책/CORS의 전체 개념은 다른 사람들이 자신이 소유하지 않은 도메인의 사용자를 대신하여 무언가를 할 수 없도록 고안되었습니다.

나는 OAuth를 고려해 볼 때 이러한 유형의 교차 도메인 로그인 흐름을 구현하는 것이 올바른 방법 일 수 있습니다.

+0

고마워, 내가 살펴볼 게! – chrisamayas

0

하나의 쉬운 해결책 (임시 수정일 뿐이므로 프로덕션 코드에 대해보다 영구적 인 솔루션을 찾아야 함)은 서버 컨트롤러 코드에서 요청이 들어오는 서버의 이름을 하드 코드하여 허용합니다 그것으로부터의 접근.

0

CORS 보호가 의도됩니다.

Zoho는 OAuth 통합을 통해 사이트에 대한 인증을보다 명확하게 제공합니다. 통합하는 것이 더 깨끗한 방법입니다.

인증의 다른 모드가 허용되지 않고, 조호에 의해 차단 될 수 있습니다

https://www.zoho.com/crm/help/api/using-authentication-token.html

, 단계에 명확하게 여기 문서화.

희망이 있습니다.

+0

대단히 감사합니다! 설명 주셔서 감사합니다! – chrisamayas