1

Google App Engine 튜토리얼을 따라했는데 방명록 클래스의 응답 객체에 내용을 추가하는 데 약간의 문제가 있습니다. 여기 Wireshark를 사용Google App Engine : 응답 "Content-Length"헤더는 항상 0입니다.

class Guestbook(webapp2.RequestHandler): 
def post(self): 

    # We set the same parent key on the 'Greeting' to ensure each greeting 
    # is in the same entity group. Queries across the single entity group 
    # will be consistent. However, the write rate to a single entity group 
    # should be limited to ~1/second. 
    guestbook_name = self.request.get('guestbook_name', 
             DEFAULT_GUESTBOOK_NAME) 
    testvar = self.request.get('testvar', 
             DEFAULT_GUESTBOOK_NAME) 
    greeting = Greeting(parent=guestbook_key(guestbook_name)) 

    if users.get_current_user(): 
     greeting.author = users.get_current_user() 

    greeting.content = self.request.get('content') 
    greeting.info = 'DIDTHISWORK?' 
    greeting.put() 

    self.response.headers.add_header("Expires", 'Information here')  
    #self.response.set_status(200,'Is this working?!') 

    self.response.headers['Content-Type'] = 'text/plain' 
    #self.response.headers['Content-Length'] = '5' 
    self.response.out.write('Hello') 


    query_params = {'guestbook_name': guestbook_name} 
    self.redirect('/?' + urllib.urlencode(query_params)) 
    print type(self.response) 

는 응답 패킷 :

HTTP/1.1 302 Found 
Cache-Control: no-cache 
Expires: Information here 
Content-Type: text/plain 
Location: http://_______.appspot.com/?guestbook_name=default_guestbook 
Date: Fri, 17 May 2013 01:21:52 GMT 
Server: Google Frontend 
Content-Length: 0 

당신은 내가 "안녕하세요"와 컨텐츠 몸을 채우기 위해 노력하고 볼 수 있듯이하지만 나에게 내용 길이를주고 유지 = 0 수동으로 설정하면 도움이되지 않아서 주석 처리했습니다. 인사와 함께 코드를 안전하게 무시할 수 있다고 생각하지만, 내가하는 일에 영향을 줄 수 있도록 추가했습니다.

답변

2

페이지에 내용을 인쇄하기 전에 리디렉션을 보내므로 길이는 0입니다. 당신이 Wireshark를 캡처 보면

self.redirect('/?' + urllib.urlencode(query_params)) # redirects 
print type(self.response)       # never executes 

, 302 리디렉션 및 위치로 리디렉션하는 브라우저를 알려주는 Location: 헤더 인 응답 코드를 확인하십시오.

HTTP/1.1 302 Found 
Location: http://_______.appspot.com/?guestbook_name=default_guestbook 
+0

정말 고마워요! 이게 효과가있어. –