파이썬에서 HTTPS 요청을해야하고 요청 모듈을 사용하여 더 쉽게 사용할 수 있도록 노력하고 있습니다.요청 모듈을 사용하여 파이썬 HTTPS 요청을하는 올바른 방법은 무엇입니까?
요청에 헤더와 3 개의 FORM 매개 변수가 URL 인코딩되어야합니다.
header = {'Content-type': 'application/x-www-form-urlencoded', 'Authorization':'Basic ' + encoded_string, 'Connection': 'Keep-Alive', 'Host':'host.host.com'}
payload='grant_type=authorization_code&code=' + request.args['code'] + '&state=' + request.args['state'] + '&redirect_uri=http://xxx.xyz.com/request_listener'
url = 'https://serviceprovider.xxx.com/auth/j_oauth_resolve_access_code'
response = requests.post(url, data=payload, headers=header, verify=False)
나는 response
의 content
또는 text
을 반환 할 때, 나는 빈 문자열을 얻을 : 이것은 내가 뭐하는 거지입니다. 그러나 실제 response
개체를 인쇄 할 때 <Response [200]>
이라고 표시되지만 실제로 200 OK이면 POST도 내가 지정한 redirect_uri로 이동해야하며 거기에 알림을 받게됩니다.
이런 일은 일어나지 않으며 나는 왜 그런지 신비 스럽다.
http://docs.python.org/3/library/urllib.request.html#module-urllib.request –
시도 할 사항 : 'curl'을 사용하여 수동으로 요청을 구성하고, 유효한 요청의 내용이 무엇인지 알아야합니다. 이것이 작동하면 파이썬에서 요청을 작성하거나 전달하는 방식에 문제가 있음을 알게됩니다. 'payload'를 문자열이 아닌 dict로 구성하십시오. 서버에 보내기 전에 요청 상태를 조사 할 수 있도록 준비된 요청을 작성하십시오. –