반응형
django test client는 url에 액세스할 때 301개의 리디렉션을 받습니다.
저는 장고뷰를 위한 유닛테스트를 작성하고 있습니다.내 보기 중 하나가 예상치 못한 리디렉션 코드 301을 반환하는 것을 관찰했습니다.
여기에 앞서 언급한 저의 views.py 이 있습니다.
def index(request):
return render(request, 'index.html',
{'form': QueryForm()})
def query(request):
if request.is_ajax():
form = QueryForm(request.POST)
return HttpResponse('valid')
아래는 urls.py 입니다.
urlpatterns = patterns('',
url(r'^$', 'core.views.index'),
url(r'^query/$', 'core.views.query')
)
그리고 실패할 유닛 테스트.
def so_test(self):
response = self.client.post('/')
self.assertEquals(response.status_code, 200)
response = self.client.post('/query', {})
self.assertEquals(response.status_code, 200)
제 질문은 301번 상태가 반환된 이유는 무엇입니까?
일치하는 URL을 정의했습니다./query/
, 하지만 당신은 시험하고 있습니다./query
. 장고는 사용자의 설정에 있기 때문에 후행 슬래시가 있는 URL로 리디렉션합니다.
테스트를 다음과 같이 변경할 수 있습니다.
response = self.client.post('/query/', {})
저는 실수로 a로 시험을 진행한 것이 문제였습니다.setting.py
파일을 가지고 있었습니다. 로 바꾸었습니다.SECURE_SSL_REDIRECT = False
문제를 해결했습니다.
다른 옵션은 다음을 사용하는 것입니다.client
와 함께secure=True
, 즉:
response = self.client.post('/query/', {}, secure=True)
언급URL : https://stackoverflow.com/questions/12784905/django-test-client-gets-301-redirection-when-accessing-url
반응형
'programing' 카테고리의 다른 글
What does the smiley face ":)" mean in CSS? (0) | 2023.09.09 |
---|---|
다중 태그 도커 이미지 만들기 (0) | 2023.09.09 |
축소 도구막대 배치를 프로그래밍 방식으로 축소 또는 확장 (0) | 2023.09.09 |
안드로이드 1.6: "android.view.WindowManager $BadToken 예외:창을 추가할 수 없습니다. 토큰 null은 응용 프로그램을 위한 것이 아닙니다." (0) | 2023.09.09 |
Swift에서 실패 가능한 초기화를 구현하는 모범 사례 (0) | 2023.09.09 |