Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit59b1f93

Browse files
author
meig
committed
fix session.py
1 parent3069eec commit59b1f93

File tree

4 files changed

+28
-15
lines changed

4 files changed

+28
-15
lines changed

‎pub/session/__init__.pyc‎

129 Bytes
Binary file not shown.

‎pub/session/cookie_storage.pyc‎

5.12 KB
Binary file not shown.

‎pub/session/session.py‎

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -20,22 +20,24 @@ def _create_request(cookie_stg,url,method,headers,body,connect_timeout=10,reques
2020
ifheaders:
2121
forkeyinheaders.keys():
2222
req_headers.add(key,headers[key])
23-
returntornado.httpclient.HTTPRequest(url,method,req_headers,body,None,None,connect_timeout,request_timeout)
23+
returntornado.httpclient.HTTPRequest(url,method,req_headers,body,None,None,connect_timeout,request_timeout,follow_redirects=False)
2424

25-
classHandlerFilter(object):
26-
def__init__(self,handler,filter):
27-
self.__handler=handler
28-
self.__filter=filter
29-
defhandle_response(self,response,seq):
30-
self.__filter(response)
31-
self.__handler(response,seq)
25+
#class HandlerFilter(object):
26+
# def __init__(self,handler,filter):
27+
# self.__handler = handler
28+
# self.__filter = filter
29+
# def handle_response(self,response,seq):
30+
# self.__filter(response)
31+
# self.__handler(response,seq)
3232

3333

3434
classSession(object):
3535
def__init__(self):
3636
self._cookie_stg=cookie_storage.CookieStg()
3737

3838
def_filter_response(self,response):
39+
ifnotresponse:
40+
return
3941
headers=response.headers
4042
cookie_list=headers.get_list("set-cookie")
4143
domain=get_domain(response.request.url)
@@ -46,16 +48,25 @@ def _filter_response(self,response):
4648
deffetch(self,url,method,headers,body,connect_timeout=10,request_timeout=10):
4749
req=_create_request(self._cookie_stg,url,method,headers,body,connect_timeout,request_timeout)
4850
client=tornado.httpclient.HTTPClient()
49-
response=client.fetch(req)
50-
ifnotresponse.error:
51-
self._filter_response(response)
51+
try:
52+
response=client.fetch(req)
53+
exceptException,e:
54+
response=e.response
55+
ifnotresponse:
56+
returnNone
57+
self._filter_response(response)
5258
ifresponse.codein (301,302,303,307):
5359
new_url=urlparse.urljoin(url,response.headers["Location"])
5460
returnself.fetch(new_url,method,headers,body,connect_timeout,request_timeout)
5561
returnresponse
5662

57-
defsend_form(self,action,method,data_map,connect_timeout=10,request_timeout=10):
58-
add_header= {"content-type":"application/x-www-form-urlencoded"}
63+
defsend_form(self,action,method,data_map,add_header_=None,connect_timeout=10,request_timeout=10):
64+
ifnotadd_header_:
65+
add_header= {}
66+
else:
67+
importcopy
68+
add_header=copy.copy(add_header_)
69+
add_header["content-type"]="application/x-www-form-urlencoded"
5970
try:
6071
importurllib
6172
args=urllib.urlencode(data_map)
@@ -97,8 +108,10 @@ def fetch(self,url,method,headers,body,response_handler,connect_timeout=10,reque
97108
client.fetch(req,handler.handle_response)
98109
returnTrue
99110

100-
defsend_form(self,action,method,data_map,reponse_handler,connect_timeout=10,request_timeout=10):
101-
add_header= {"content-type":"application/x-www-form-urlencoded"}
111+
defsend_form(self,action,method,data_map,reponse_handler,add_header=None,connect_timeout=10,request_timeout=10):
112+
ifnotadd_header:
113+
add_header= {}
114+
add_header["content-type"]="application/x-www-form-urlencoded"
102115
try:
103116
importurllib
104117
args=urllib.urlencode(data_map)

‎pub/session/session.pyc‎

5.49 KB
Binary file not shown.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp