2013-02-19 3 views
0

소셜 네트워크 웹 사이트 용 API를 개발 중입니다. 이 API는 기본적으로 사용자의 모든 요청 (친구 목록 가져 오기, 상태 업데이트 게시 등)을 수행하고 필요한 경우 답장을 보냅니다.API 및 소비자 흐름

인증을 위해 OAuth 2.0 프로토콜을 구현합니다. Consumer (우리의 php 프로젝트)는 API id와 secret를 가지고있다.

기본 시나리오 :

클라이언트 (PHP는 웹 프로젝트)
  • API 소비자에 로그인하고 싶어
    • 사용자가 API에 그/그녀의 사용자 자격 증명을 보내,이 요청을한다 API에 대한 사용자 지시, 토큰을 가져옵니다.
    • 사용자가 우리 웹 사이트로 돌아와 소비자에게 토큰을 전달합니다.
    • 소비자가 api 서버로 이동하여 액세스 토큰을받습니다.
    • 이제 소비자 (PHP 프로젝트)는 사용자의 개인 정보에 액세스 할 수 있습니다.

    소셜 네트워크 웹 사이트이므로 개발자는 향후 앱 개발자가 API를 사용할 수 있기를 바랍니다.

    API 디자인에 경험이 없습니다. 그 흐름이 의미가 있습니까? 가장 간단한 인증은 PHP 프로젝트를 통해 사용자 정보에 액세스하는 것 같습니다. 그러나 우리는 PHP 코드로 데이터베이스에 액세스하고 싶지 않습니다. 우리는 클라이언트 측에서 ajax를 사용하고 API에 요청을 보냅니다. 그리고 더 나은 해결책이 있어야한다고 생각합니다. 무엇을 제안 하시겠습니까?

  • 답변

    0

    물론 API 디자인은 기본적으로 기술을 선택해야하는 부분입니다. PHP 또는 .net 또는 Java가 될 수 있습니다. PHP 또는 .Net을 선호합니다. 유연성을 많이 얻었 기 때문입니다. API는 요청에 따라 XML 또는 Json을 반환합니다. 도움을받을 수있는 PHP에는 많은 CMS가 있습니다. .net 우리는 당신을 도울 서비스 스택이 있습니다.

    API는 API 방법뿐만 아니라 다른 세계와 완전히 독립적이어야했습니다. 이 작업을 수행 할 수 있다면 좋은 아키텍처를 만들 수 있습니다.