2014-11-21 2 views
0

django-rest-framework으로 애플리케이션 용 REST API를 개발 중입니다.Django REST 프레임 워크 API는 API 프로젝트에서만 작동합니다.

모두는 한 내가 사용으로 잘 작동 중 하나

  • 탐색 가능한 API
  • API가 건설되고 같은 프로젝트에서 템플릿 내에서
  • AJAX 요청

내가하려고하면 예를 들어 같은 머신에있는 다른 Django 프로젝트의 "master"프로젝트 (API를 빌드하는 프로젝트)에서 API에 액세스하려면 계속 오류가 발생합니다.

[21/Nov/2014 12:11:01] "GET /api/test_session/ HTTP/1.1" 200 9208 

같은 엔드 포인트하지만 마스터 프로젝트 외부에서 (그것은 실패) : 여기

성공 API 호출에 대한 runserver에서 추적이다

[21/Nov/2014 12:11:14] "GET /api/test_session/ HTTP/1.1" 200 58 

내가 내 API 호출을 보내려면 ajax jQuery 함수를 사용하고 error 콜백을 설정해야합니다. 그러나 내가받은 errorThrown은 비어 있으며 textStatus 속성은 "오류"라고 말합니다.

oustide에서 API에 어떻게 액세스합니까? 기본 인증 백엔드 (세션 기반)를 사용하고 있습니다.

+0

200 응답은 성공적인 응답을 제시합니다. 그것이 실패한 응답의 형태입니까? 그렇다면 그 차이점을 보여주십시오. –

+0

실제로 웹 서버는 200을 반환합니다.하지만 $ .ajax()는'error' 콜백을 트리거하지만'success'는 트리거하지 않습니다. 달리 말하자면, 주 프로젝트 외부에서 API를 호출 할 때 예상되는 JSON 응답을 얻지 못하고 있습니다. 반면, 메인 프로젝트에서'TemplateView'를 사용하여 원시 html 페이지에서 똑같은 호출 *을 만들면'success'가 발생하고 예상되는 JSON 메시지가 수신됩니다. – Buddyshot

+0

그런 다음 문제는 REST API가 아니라 Javascript입니다. ipython 및 [요청] (http://docs.python-requests.org/en/latest/) 또는 이와 비슷한 외부 호출을 할 수 있는지 직접 확인 했습니까? –

답변

관련 문제